Como combinar arquivos de texto usando o comando “cat” no Linux

00_lead_image_concatenating_files

O comando cat é muito útil no Linux. Possui três funções principais relacionadas à manipulação de arquivos de texto: criá-los, exibi-los e combiná-los.

Discutimos o uso do comando cat (entre outros) para criar e visualizar arquivos de texto na linha de comando do Linux . Mas vamos supor que você tenha três arquivos de texto: arquivo1.txt, arquivo2.txt e arquivo3.txt. Você deseja combiná- los (ou concatená- los) em um arquivo de texto contendo informações de todos os três, nessa ordem. Você também pode fazer isso com o comando cat.

Basta abrir um Terminal e digitar o seguinte comando:

cat arquivo1.txt arquivo2.txt arquivo3.txt

Obviamente, substitua os nomes dos arquivos no exemplo acima pelos seus.

O conteúdo combinado dos três arquivos de texto aparecerá em seu terminal.

01_basic_cat_command

Normalmente, porém, 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 que você precisa fazer é adicionar um símbolo de redirecionamento de saída ( >) após a lista de arquivos sendo concatenados e, em seguida, especificar o nome do arquivo de texto final.

cat arquivo1.txt arquivo2.txt arquivo3.txt> arquivo4.txt

NOTA: O arquivo listado após o símbolo de redirecionamento de saída será sobrescrito, se já existir. Portanto, tome 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 arquivo4.txt (com o comando cat ou com o editor de texto de sua escolha), deverá descobrir que ele contém o texto dos três primeiros arquivos de texto.

02_redirecting_cat_command

Se você estiver combinando listas de itens de vários arquivos e quiser colocá-los em ordem alfabética no arquivo combinado, poderá classificar os itens combinados no arquivo resultante. Para fazer isso, insira o catcomando básico que mostramos anteriormente, seguido pelo comando pipe (|) e o sortcomando. Em seguida, digite o símbolo de redirecionamento de saída ( >) seguido pelo nome do arquivo para o qual deseja copiar o texto combinado. Todas as linhas de texto no arquivo de resultado serão classificadas em ordem alfabética.

cat arquivo1.txt arquivo2.txt arquivo3.txt | classificar> arquivo4.txt

03_concatenating_and_sorting

Como mencionamos anteriormente, também existe uma maneira de anexar arquivos ao final de um arquivo existente. Digite o catcomando seguido pelo arquivo ou arquivos que deseja adicionar ao final de um arquivo existente. Em seguida, digite dois símbolos de redirecionamento de saída ( >>) seguidos do nome do arquivo existente que você deseja adicionar.

cat arquivo5.txt >> arquivo4.txt

04_appending_a_file_to_end_of_existing_file

Se você quiser adicionar um pouco de texto novo a um arquivo de texto existente, use o catcomando para fazer isso diretamente da linha de comando (em vez de abri-lo em um editor de texto). Digite o catcomando seguido pelo símbolo de redirecionamento de saída dupla ( >>) e o nome do arquivo ao qual deseja adicionar texto.

cat >> file4.txt

Um cursor aparecerá na próxima linha abaixo do prompt. Comece a digitar o texto que deseja adicionar ao arquivo. Quando terminar, pressione Enter após a última linha e pressione Ctrl + D para copiar o texto para o final do arquivo e sair do cat.

Recomendado:  Como atualizar um iPad

05_appending_a_line_from_the_standard_output

Se você terminar com um arquivo muito longo depois de combinar seus arquivos de texto, poderá usar o símbolo de barra vertical com o comando less ao visualizar o arquivo na janela do Terminal. Por exemplo cat file4.txt | less,. Discutimos o uso do comando less neste artigo .