quarta-feira, 12 de agosto de 2009

Juntando arquivos linha a linha no Linux

Digamos que você tenha um arquivo (ex. letras.txt) que contenha:

a
b
c

E outro arquivo (ex. numeros.txt) que contenha:

1
2
3

E você quer unir estes arquivos para que o resultado fique:

a 1
b 2
c 3

Para isso existe um programa de linha de comando no Linux que é o paste, do pacote coreutils. O paste é capaz de unir linhas de arquivos. Por exemplo:

paste letras.txt numeros.txt > unidos.txt

Por padrão o paste separa os campos por tabulações mas você pode facilmente mudar isto adicionando o argumento -d. Por exemplo:

paste letras.txt numeros.txt -d , > unidos.txt

Resulta em um arquivo delimitado por vírgulas, ou seja, CSV (comma separated value):

a,1
b,2
c,3

Nenhum comentário:

Postar um comentário