Converter um arquivo delimitado por tabulação para usar novas linhas

10

input.txt (cerca de 30 mil linhas)

RT|367079254|bn|ERTS01065811.1| 38 1 503
RT|367079251|bn|ERTS01065814.1| 56 3 502
RT|367079248|bn|ERTS01065817.1| 52 2 502

output.txt

RT|367079254|bn|ERTS01065811.1|
38
1
503
RT|367079251|bn|ERTS01065814.1|
56
3
502
RT|367079248|bn|ERTS01065817.1|
52
2
502
jack
fonte

Respostas:

7

Sed:

sed -e 'y/\t/\n/' input.txt > output.txt

Awk:

awk 'BEGIN { OFS = "\n" } { $1=$1; print }' input.txt > output.txt
Birei
fonte
23

Eu acho que sua maneira mais fácil de fazer isso é com tr:

tr '\t' '\n' < input.txt > output.txt

Isso transformará todas as guias em novas linhas.

tr - Página de homem

derobert
fonte
11
Mais fácil e rápido também.
JRFerguson
11
Você deveria ter recebido essa resposta, pois trera a melhor solução. Ambos sed, e awk, embora sejam ótimas ferramentas, são um exagero.
JM Becker
0

Com printf:

printf '%s\n' $(<FILE)
Gilles Quenot
fonte
Eu me pergunto por que isso foi rejeitado.
Gilles Quenot
Possivelmente porque isso será dividido em espaços e não apenas em guias.
Jordanm #