Isso também pode ser feito facilmente com awk
.
$ awk '{print $2,$3,$4}' *.txt > collapsed_output.txt
Exemplo
Veja alguns dados de amostra.
$ seq 20 | paste - - - - - > sample.txt
Veja como são as linhas:
$ head sample.txt
1 2 3 4 5
6 7 8 9 10
11 12 13 14 15
16 17 18 19 20
Agora vamos fazer 10 cópias:
$ seq 10 | xargs -I{} cp sample.txt sample{}.txt
Agora temos os seguintes arquivos:
$ tree
.
|-- sample10.txt
|-- sample1.txt
|-- sample2.txt
|-- sample3.txt
|-- sample4.txt
|-- sample5.txt
|-- sample6.txt
|-- sample7.txt
|-- sample8.txt
|-- sample9.txt
'-- sample.txt
Agora, se executarmos o comando awk
:
$ awk '{print $2, $3, $4}' sample{1..10}.txt | column -t
2 3 4
7 8 9
12 13 14
17 18 19
2 3 4
7 8 9
12 13 14
17 18 19
2 3 4
7 8 9
12 13 14
17 18 19
...
Aqui estou mostrando a saída dos 3 primeiros arquivos ( sample01.txt
... sample03.txt
). Também estou formatando a saída com o comando column -t
, mas isso é apenas para fins de exibição para facilitar a visualização da saída aqui em U & L.
A formatação adicional poderia ser feita facilmente com o comando awk
, mas isso parecia estar além do escopo da questão.