O que é o comando CAT no Linux e como usá-lo

O que é o comando CAT no Linux e como usá-lo

O catcomando é a maneira mais básica do Linux de combinar arquivos. É a abreviação de conCATenation, mas há mais nisso do que apenas copiar e colar um arquivo ao lado do outro.

Formato básico para o comando CAT

É assim que você normalmente usa o catcomando:

cat file1 file2 file3 > output

A ordem para anexar arquivos um ao lado do outro é baseada na ordem em que você escreveu os arquivos dentro do comando. Neste exemplo, quando você abre o arquivo de “saída”, o conteúdo de “arquivo1” será seguido por “arquivo2”, depois “arquivo3” e assim por diante.

Terminal Linux Combinando Arquivo1 Arquivo2 e Arquivo3 Saída para Arquivo de Saída com Conteúdo de Saída no Editor de Arquivo de Texto

Você pode adicionar quantos arquivos quiser, desde que seu sistema de arquivos possa suportar o tamanho final da saída.

Além disso, como em todos os comandos de terminal do Linux, você precisará incluir a extensão do arquivo ao adicioná-los. Por exemplo, se você estiver trabalhando com arquivos JSON e planejando combinar dois deles, precisará digitá-lo como esse:

cat file1.json file2.json > combined_file.json

CAT sem a porção de saída

Para cat, a parte de saída é opcional. A remoção desta parte imprime o conteúdo de cada arquivo no terminal.

Você também pode fazer isso em arquivos únicos. Lembre-se de que você não poderá editar o conteúdo aqui como faria com arquivos DOC ou TXT em um editor de texto . O catcomando se torna mais um visualizador de arquivo de texto do que um editor.

Sinalizadores de comando CAT

Existem seis sinalizadores que você pode usar sempre que usar o CAT no Linux:

  • -nenumerar cada linha começando em 1.
  • -benumerar apenas as linhas que contêm caracteres.
  • -sesprema várias linhas vazias consecutivas em uma linha vazia.
  • -emarcar o final de cada linha.
  • -qnão exibe uma mensagem se o CAT não puder encontrar um arquivo de entrada.
  • -texibir caracteres de tabulação como ^I.

Veremos como cada um funciona e como você pode usá-los.

Usando o sinalizador -n

O -nsinalizador enumera o conteúdo de um arquivo por linha e o imprime no terminal. Ele não edita o arquivo em si.

cat -n file1.txt

Mas você ainda pode salvar a saída (com enumeração) fazendo isso:

cat -n file1.txt > file2.txt

Sinalizadores de comando cat do terminal Linux N sinalizador

Isso enumera o conteúdo de “arquivo1.txt” e o salva em “arquivo2.txt”.

Você também pode enumerar vários arquivos juntos. O catcomando continuará contando após o final do primeiro arquivo. Se o primeiro arquivo terminar com 33, o próximo arquivo começará em 34 e assim por diante.

Usando o sinalizador -b

O problema com o -nsinalizador é que ele também enumera linhas vazias. Se você tiver um arquivo com bastante espaço em branco para layout ou legibilidade, precisará do -bsinalizador.

cat -b file1.txt

Terminal Linux Cat Command Flags B Flag 2

O formato da -bbandeira funciona da mesma forma que a -nbandeira. Além disso, se você usar os dois juntos, o -bsinalizador substituirá o -nsinalizador, não importa como você os ordene.

Usando o sinalizador -s

O -ssinalizador é outro sinalizador de comando útil catpara quando você tem muito espaço em branco em seus arquivos. Ele funciona reduzindo todos os espaços em branco repetidos em um único, o que facilita a legibilidade.

cat -s file2.txt

Sinalizadores de comando Cat do terminal Linux Sinalizador S

Este sinalizador procura pelo menos 2 linhas vazias consecutivas antes de mesclá-las. Se o seu arquivo contiver uma única linha vazia entre duas preenchidas, ele pulará essa linha e procurará a próxima.

Usando o sinalizador -e

O -esinalizador localiza o final de cada linha e adiciona um $no final de cada linha.

cat -e file1.txt

Sinalizadores de comando Cat do terminal Linux Sinalizador E

Esse sinalizador facilita o trabalho com seus arquivos de texto quando você usa expressões regulares ou regex . Você pode fazer com que um script ou programa extra leia o conteúdo do arquivo salvo e verifique as extremidades usando regex.

Lembre-se de que o -esinalizador também adiciona um $no final de cada linha vazia, então você pode querer usar isso ao lado -spara deixar a coisa mais limpa.

Usando o sinalizador -t

O -tsinalizador é semelhante ao -esinalizador, mas procura o “caractere de tabulação” e o substitui por um ^I. O que é ótimo com esse sinalizador é que ele sabe como diferenciar o caractere “tab” do “espaço duplo”.

cat -t file1.txt > file2.txt

Sinalizadores de comando Cat do terminal Linux Sinalizador T

Isso significa que se você usar os sinalizadores -nou -bao lado do -tsinalizador, ele lerá os caracteres de espaço como estão e os deixará como estão. O mesmo vale se você adicionar uma tonelada de espaços para imitar um caractere de “tab”.

Usos do Comando Linux CAT

O catcomando só deve ser usado quando você estiver tentando combinar arquivos de texto linha por linha. Não espere que o catcomando pegue duas linhas de texto e as combine em uma única linha.

Terminal Linux Hello World cortado em duas linhas

Por outro lado, você verá muita utilidade para isso quando estiver tentando limpar arquivos de texto para outros scripts trabalharem. Os sinalizadores , , e são úteis o suficiente para poupar seu tempo de codificar seu próprio script para o que quer que esses sinalizadores -e-tfaçam -b.-s

Também ajuda a facilitar a visualização de arquivos de texto em comparação com a necessidade de usar o editor Nano o tempo todo.

Nano Editor Olá Mundo em Duas Linhas

perguntas frequentes

O que acontecerá se eu usar o comando CAT em um arquivo de vídeo?

Os arquivos de vídeo contêm uma coisa chamada “cabeçalho”. Esta é uma informação que mostra como o vídeo foi codificado. Se você usar o comando CAT para concatenar vídeos, ficará com um que possui informações de cabeçalho entre os dados de vídeo codificados. A maioria dos visualizadores lerá isso e pensará que seu arquivo foi corrompido. É melhor usar uma ferramenta diferente como o FFmpeg para fazer isso com arquivos de vídeo.

Posso usar o comando Linux CAT com arquivos de pastas diferentes?

Você pode tratar seus nomes de arquivo como caminhos de pasta ao combinar arquivos em pastas usando o catcomando. Dessa forma, você pode combinar um arquivo do Desktop com outro do Photos fazendo assim: cat Desktop/file1.txt Photos/Photos.txt >> output.txt.

O que acontece quando uso o nome de arquivo de um arquivo existente como saída para o comando CAT?

Dependendo se você estiver usando >ou >>, ele substituirá ou anexará o conteúdo ao arquivo existente. O >>comando anexa a um arquivo ou cria o arquivo se ele não existir. O >comando substitui o arquivo se ele existir ou o cria se não existir.

Para evitar qualquer adivinhação, é sempre melhor salvar a saída em um arquivo inexistente com um nome de arquivo exclusivo.

Deixe um comentário

O seu endereço de email não será publicado. Campos obrigatórios marcados com *