O que é o comando CAT no Linux e como usá-lo
O cat
comando é 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 cat
comando:
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.
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 cat
comando 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:
-
-n
enumerar cada linha começando em 1. -
-b
enumerar apenas as linhas que contêm caracteres. -
-s
esprema várias linhas vazias consecutivas em uma linha vazia. -
-e
marcar o final de cada linha. -
-q
não exibe uma mensagem se o CAT não puder encontrar um arquivo de entrada. -
-t
exibir caracteres de tabulação como^I
.
Veremos como cada um funciona e como você pode usá-los.
Usando o sinalizador -n
O -n
sinalizador 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
Isso enumera o conteúdo de “arquivo1.txt” e o salva em “arquivo2.txt”.
Você também pode enumerar vários arquivos juntos. O cat
comando 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 -n
sinalizador é que ele também enumera linhas vazias. Se você tiver um arquivo com bastante espaço em branco para layout ou legibilidade, precisará do -b
sinalizador.
cat -b file1.txt
O formato da -b
bandeira funciona da mesma forma que a -n
bandeira. Além disso, se você usar os dois juntos, o -b
sinalizador substituirá o -n
sinalizador, não importa como você os ordene.
Usando o sinalizador -s
O -s
sinalizador é outro sinalizador de comando útil cat
para 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
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 -e
sinalizador localiza o final de cada linha e adiciona um $
no final de cada linha.
cat -e file1.txt
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 -e
sinalizador também adiciona um $
no final de cada linha vazia, então você pode querer usar isso ao lado -s
para deixar a coisa mais limpa.
Usando o sinalizador -t
O -t
sinalizador é semelhante ao -e
sinalizador, 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
Isso significa que se você usar os sinalizadores -n
ou -b
ao lado do -t
sinalizador, 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 cat
comando só deve ser usado quando você estiver tentando combinar arquivos de texto linha por linha. Não espere que o cat
comando pegue duas linhas de texto e as combine em uma única linha.
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
já -t
faç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.
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 cat
comando. 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