Comando Linux do cat
Em sistemas operacionais do tipo Unix, o comando cat lê dados de arquivos e gera seu conteúdo. É a maneira mais simples de exibir o conteúdo de um arquivo na linha de comando .
Este documento cobre a versão GNU / Linux do cat .
Descrição
gato significa ” catenar “. É um dos comandos mais usados em sistemas operacionais semelhantes ao Unix. Pode ser usado para:
- Exibir arquivos de texto
- Copie arquivos de texto para um novo documento
- Anexe o conteúdo de um arquivo de texto ao final de outro arquivo de texto, combinando-o
Exibindo arquivos de texto
A maneira mais simples de usar o cat é dar o nome de um arquivo de texto. Ele exibe o conteúdo do arquivo de texto na tela. Por exemplo:
cat mytext.txt
… lerá o conteúdo de mytext.txt e os enviará para a saída padrão (a tela do seu terminal ). Se mytext.txt for muito longo, eles passarão pouco e você verá apenas o valor da última tela do seu documento.
Se você deseja visualizar o documento página por página ou rolar para frente e para trás no documento, pode usar um pager ou visualizador, como pág , mais ou menos .
Se você especificar mais de um nome de arquivo, cat exibirá esses arquivos um após o outro, gerando seu conteúdo na saída padrão. Portanto, este comando:
gato mytext.txt mytext2.txt
Irá imprimir o conteúdo desses dois arquivos de texto como se fossem um único arquivo.
Copie um arquivo de texto
Normalmente você copia um arquivo com o comando cp . Você pode usar o cat para fazer cópias de arquivos de texto da mesma maneira.
O cat envia sua saída para stdout (saída padrão), que geralmente é a tela do terminal. No entanto, você pode redirecionar essa saída para um arquivo usando o símbolo de redirecionamento de shell ” > “.
Por exemplo, este comando:
cat mytext.txt> newfile.txt
… lerá o conteúdo de mytext.txt e os enviará para a saída padrão; em vez de exibir o texto, no entanto, o shell redirecionará a saída para o arquivo newfile.txt . Se o newfile.txt não existir, ele será criado. Se o newfile.txt já existir, ele será substituído e seu conteúdo anterior será perdido, portanto, tenha cuidado.
Da mesma forma, você pode criar vários arquivos no seu arquivo de destino. Por exemplo:
gato mytext.txt mytext2.txt> newfile.txt
… lerá o conteúdo de mytext.txt e mytext2.txt e gravará o texto combinado no arquivo newfile.txt . Novamente, se o newfile.txt ainda não existir, ele será criado; se já existir, será substituído.
Anexar o conteúdo de um arquivo de texto a outro arquivo de texto
Em vez de sobrescrever outro arquivo, você também pode anexar um arquivo de texto de origem a outro usando o operador de redirecionamento ” >> “.
Por exemplo:
cat mytext.txt >> outro arquivo de texto.txt
… lerá o conteúdo de mytext.txt e os escreverá no final de outro arquivo de texto.txt . Se another-text-file.txt ainda não existir, ele será criado e o conteúdo de mytext.txt será gravado no novo arquivo.
O comando cat também funciona para vários arquivos de texto:
gato mytext.txt mytext2.txt >> outro arquivo de texto.txt
… gravará o conteúdo combinado de mytext.txt e mytext2.txt no final de outro arquivo de texto.txt .
Incorporando a entrada padrão na saída do cat
O cat lê da entrada padrão se você especificar um hífen (” – “) como um nome de arquivo. Por exemplo, se você possui um arquivo, list.txt , que contém o seguinte texto:
maçãs laranjas manteiga pão
… você pode usar o comando echo para gerar texto, canalizar essa saída para cat e instruir cat para catená-lo com o conteúdo do arquivo, assim:
eco "Minha lista de compras" | cat - list.txt
… que produziria o seguinte texto:
Minha lista de compras maçãs laranjas manteiga pão
Em resumo, cat é uma ferramenta simples, mas muito útil para trabalhar com os dados em arquivos de texto, logs do sistema, arquivos de configuração e quaisquer outros dados legíveis por humanos armazenados em um arquivo.
Sintaxe
cat [ OPÇÃO ] ... [ ARQUIVO ] ...
Opções
Essas opções estão disponíveis no GNU cat , que é padrão na maioria das distribuições Linux. Se você estiver usando um sistema operacional semelhante ao Unix ( BSD , por exemplo), algumas dessas opções podem não estar disponíveis; verifique sua documentação específica para obter detalhes.
-A , –show-all | Equivalente a -vET . |
-b , –number-nonblank | Número de linhas de saída não vazias. Esta opção substitui -n . |
-e | Equivalente a -vE . |
-E , –show-ends | Exiba ” $ ” no final de cada linha. |
-n , –number | Numere todas as linhas de saída. |
-s , –spree-blank | Suprimir linhas de saída vazias repetidas. |
-t | Equivalente a -vT . |
-T , –show-tabs | Exibir caracteres TAB como ^ I. |
-v , –show-nonprinting | Use as anotações ^ e M , exceto LFD e TAB . |
–help | Exiba uma mensagem de ajuda e saia. |
–version | Informações de versão de saída e saída. |
Exemplos
cat file.txt
Leia o conteúdo do arquivo.txt e exiba-o na tela.
cat file1.txt file2.txt
Lê o conteúdo de file1.txt e file2.txt e os exibe em ordem na tela do terminal.
arquivo cat.txt> newfile.txt
Leia o conteúdo de file.txt e grave -o em newfile.txt , substituindo qualquer coisa que newfile.txt continha anteriormente. Se o newfile.txt não existir, ele será criado.
cat file.txt >> outro arquivo.txt
Leia o conteúdo do arquivo.txt e anexe-o ao final de outro arquivo.txt . Se another-file.txt não existir, ele será criado.
cat -s file.txt
Exiba o conteúdo de file.txt , omitindo quaisquer linhas em branco repetidas.
Comandos relacionados
cp – Copia arquivos e diretórios.
ed – Um simples editor de texto.
less– visualizador de texto de rolagem.
more – Exibe o texto uma tela por vez.
pico – Um simples editor de texto.
pg – Navegue página por página através de arquivos de texto.
tac – envia o conteúdo dos arquivos na ordem inversa.
tee – direciona o conteúdo de um arquivo para várias saídas.
touch – Atualize o registro de data e hora de um arquivo ou diretório.