Usando tr
, substitua cada caractere de espaço repetido ( ) por um único caractere de nova linha (
\n
).
tr -s ' ' '\n'< infile > outfile
Mas eu acho que você quer algo assim?
1 2 3 4 1 a # a b c d --> 2 b $ # $ @ % 3 c @ 4 d %
Com awk
, poderíamos fazer:
awk '{ for (i=1; i<=NF; i++) RtoC[i]= (RtoC[i]? RtoC[i] FS $i: $i) }
END{ for (i in RtoC) print RtoC[i] }' infile
Isso une cada mesma posição de número arquivado em conjunto e em END
imprime o resultado que seria a primeira linha na primeira coluna, segunda linha na segunda coluna, etc. É claro que o arquivo de entrada é limitado ao tamanho da sua memória. / p>