Como combinar arquivos de texto usando o comando cat no Linux
O comando cat é muito útil no Linux. Tem três funções principais relacionadas à manipulação de arquivos de texto: criá-los, exibi-los e combiná-los.
Nós discutimos o uso do comando cat (entre outros) para criar e visualizar arquivos de texto na linha de comando no Linux. Mas vamos supor que você tenha três arquivos de texto: file1.txt, file2.txt e file3.txt. Você quer combinar (ou concatenar) em um arquivo de texto contendo informações de todos os três, nessa ordem. Você pode fazer isso com o comando cat também.
Simplesmente abra um Terminal e digite o seguinte comando:
cat file1.txt file2.txt file3.txt
Obviamente, substitua os nomes dos arquivos no exemplo acima pelo seu próprio.
O conteúdo combinado dos três arquivos de texto aparecerá no seu terminal.
Normalmente, no entanto, você provavelmente desejará combinar esses arquivos de texto em outro arquivo de texto, não apenas imprimir os resultados na tela. Felizmente, isso é muito simples. Tudo o que você precisa fazer é adicionar um símbolo de redirecionamento de saída (>
) após a lista de arquivos sendo concatenados e, em seguida, especifique o nome do arquivo de texto final.
cat file1.txt file2.txt file3.txt> file4.txt
NOTA: O arquivo listado após o símbolo de redirecionamento de saída será sobrescrito, se já existir. Portanto, tenha cuidado ao especificar o nome do arquivo de texto combinado. Mostraremos mais adiante neste artigo como anexar arquivos ao final de um arquivo existente.
Se você abrir file4.txt (com o comando cat ou com o editor de texto de sua escolha), você deve descobrir que ele contém o texto dos três primeiros arquivos de texto.
Se você estiver combinando listas de itens de vários arquivos e quiser que estejam em ordem alfabética no arquivo combinado, poderá classificar os itens combinados no arquivo resultante. Para fazer isso, digite o básico gato
comando que mostramos anteriormente seguido pelo comando pipe (|) e pelo ordenar
comando. Em seguida, digite o símbolo de redirecionamento de saída (>
) seguido do nome do arquivo no qual você deseja copiar o texto combinado. Todas as linhas de texto no arquivo de resultado serão ordenadas alfabeticamente.
cat file1.txt file2.txt file3.txt | sort> file4.txt
Como mencionamos anteriormente, há também uma maneira de anexar arquivos ao final de um arquivo existente. Digite o gato
comando seguido pelo arquivo ou arquivos que você deseja adicionar ao final de um arquivo existente. Em seguida, digite dois símbolos de redirecionamento de saída (>>
) seguido do nome do arquivo existente que você deseja adicionar.
cat file5.txt >> file4.txt
Se você quiser adicionar um pouco de novo texto a um arquivo de texto existente, use o gato
comando para fazê-lo diretamente da linha de comando (em vez de abri-lo em um editor de texto). Digite o gato
comando seguido pelo símbolo de redirecionamento de saída dupla (>>
) e o nome do arquivo ao qual você deseja adicionar texto.
cat >> file4.txt
Um cursor aparecerá na próxima linha abaixo do prompt. Comece a digitar o texto que você deseja adicionar ao arquivo. Quando estiver pronto, pressione Enter após a última linha e pressione Ctrl + D para copiar o texto para o final do arquivo e sair do gato.
Se você acabar com um arquivo muito longo depois de combinar seus arquivos de texto, poderá usar o símbolo de pipe com o comando less ao visualizar o arquivo na janela do Terminal. Por exemplo, cat file4.txt | Menos
. Discutimos o uso do menor comando neste artigo.