Estamos nisso de novo slm :)
Mecanismo semelhante em perl, a partir da linha de comando:
perl -ane 'print "$F[0] $F[1]\n $F[3] $F[2] @F[4..9]\n" .
" $F[11] $F[10] @F[12..17]\n"' inputfile
-n
processa cada linha de inputfile
como um loop. -a
divide cada linha em torno do separador de campos (que usa como padrão espaço) e atribui à matriz especial @F
e -e
passa para o comando perl especificado (que simplesmente imprime os elementos na ordem exigida com o espaçamento e novas linhas, quando necessário).
Para colocá-lo em um arquivo de script perl:
#! /usr/bin/perl -an
print "$F[0] $F[1]\n $F[3] $F[2] @F[4..9]\n" .
" $F[11] $F[10] @F[12..17]\n";
Chmod o arquivo ( chmod u+x perlscript
), então simplesmente execute ./perlscript inputfile
.
E se você precisar da saída em um arquivo diferente, basta colocar > outputfile
no final do comando (isto é o mesmo para o primeiro exemplo a ser usado diretamente na linha de comando)
./perlscript inputfile > outputfile