Observe que o seu arquivo possui finais de linha no estilo do Windows. Isso pode confundir as coisas. Além disso, tem alguns caracteres extras no começo:
$ 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
De qualquer forma, se você não estiver muito ligado a sed
, esse tipo de coisa é muito fácil com awk
:
tr -d $'\r' < finnish-czech.txt | awk -F"\t" -vOFS="\t" '{print $2,$1}'
O tr
remove \r
e, em seguida, o awk imprime o segundo campo seguido do primeiro. O -F"\t"
define o separador do campo de entrada como guia (isso não é necessário, a menos que você possa ter mais de duas palavras por linha) e o -vOFS=:\t"
define o separador de saída como guia.