Обратите внимание, что ваш файл имеет окончания строк в стиле Windows. Это может сбить с толку. Кроме того, он содержит несколько лишних символов в начале:
$ wget -O - http://sinivalkoiset.wz.cz/ostatni/finnish-czech.txt 2>/dev/null | head -n1 | od -c
0000000 357 273 277 A f r i k k a \t A f r i k
0000020 a \r \n
0000023
В любом случае, если вы не слишком привязаны к sed
, подобные вещи очень легко сделать с помощью awk
:
tr -d $'\r' < finnish-czech.txt | awk -F"\t" -vOFS="\t" '{print $2,$1}'
Команда tr
удаляет \r
, а затем awk печатает второе поле, за которым следует первое. -F"\t"
устанавливает разделитель полей ввода на табуляцию (это не нужно, если вы не можете иметь более 2 слов в строке), а -vOFS=:\t"
устанавливает разделитель вывода на табуляцию.
Вы можете просто использовать обычную строку со встроенными символами новой строки:
ntrs exec-all-ubuntu --exec '
echo "$(pwd)"
echo "$foobar"
'