Compreender o comando tail do Linux é fundamental para qualquer pessoa que esteja se aprofundando no mundo dos sistemas baseados em Linux. Este comando, conhecido pela sua eficiência e simplicidade, desempenha um papel fundamental no gerenciamento de arquivos e monitoramento do sistema. Neste guia, nos concentramos em demonstrar como usar o comando tail no Linux, oferecendo insights sobre suas aplicações práticas e utilidade. O comando tail é particularmente valioso para visualizar as partes mais recentes de um arquivo, tornando-o uma ferramenta indispensável para administradores de sistema e desenvolvedores.
Aqui estão alguns recursos principais do comando tail do Linux:
- Monitoramento em tempo real : permite aos usuários visualizar as atualizações mais recentes de um arquivo em tempo real, o que é essencial para monitorar arquivos de log e processos do sistema.
- Saída personalizável : os usuários podem especificar o número de linhas a serem exibidas, adaptando a saída às suas necessidades específicas.
- Combinação com outros comandos : O comando tail pode ser perfeitamente integrado com outros comandos do Linux para operações mais complexas, aumentando sua versatilidade.
- Simplicidade e acessibilidade : sua sintaxe direta o torna acessível a usuários de todos os níveis de habilidade.
Esses atributos tornam o comando tail uma ferramenta indispensável no kit de ferramentas do Linux. À medida que nos aprofundamos neste guia, você aprenderá as nuances da utilização deste comando para agilizar seu trabalho em sistemas Linux, aumentando a eficiência e a eficácia.
Compreendendo e utilizando o comando Linux Tail
Os princípios básicos do comando Tail
O comando tail do Linux é um utilitário essencial para exibir o final de um arquivo. Normalmente, mostra as últimas 10 linhas, mas pode ser ajustado para mostrar um número diferente de linhas usando a opção -n. Essa funcionalidade é crucial para monitorar as atualizações mais recentes de um arquivo, especialmente arquivos de log, em tempo real.
Sintaxe do comando Tail
A sintaxe do comando tail é direta:
tail [OPTION]... [FILE]...
Cada parte desta sintaxe desempenha uma função específica. O [OPTION]
permite personalização, como especificar o número de linhas a serem exibidas e [FILE]
indica o arquivo que você está acessando.
Comando Tail no Linux: casos de uso essenciais
Exibindo as últimas linhas de um arquivo
O comando tail no Linux tem a função principal de mostrar o final de um arquivo. Por exemplo, executando:
tail exemplo.txt
Isso exibirá as últimas 10 linhas de “exemplo.txt”. Este comando é particularmente útil para acessar rapidamente as entradas mais recentes em arquivos de log ou qualquer arquivo onde as informações mais recentes sejam anexadas no final.
Especificando o número de linhas
Para visualizar um número específico de linhas, use a -n
opção. Por exemplo:
tail -n 20 exemplo.txt
Este comando mostrará as últimas 20 linhas de “example.txt”. Ajustar o número de linhas exibidas pelo comando tail pode ser especialmente útil quando você precisa revisar uma determinada parte dos dados recentes que excede as 10 linhas padrão.
Visualizando vários arquivos simultaneamente
Um recurso poderoso do comando tail é sua capacidade de exibir o final de vários arquivos simultaneamente. Por exemplo:
tail arquivo1.txt arquivo2.txt
Este comando exibirá as últimas 10 linhas de “arquivo1.txt” e “arquivo2.txt”. Esse recurso é extremamente benéfico para comparar as atualizações ou entradas mais recentes em diferentes arquivos, como vários arquivos de log no monitoramento do sistema.
Aplicativos avançados do comando Linux Tail
Monitorando continuamente atualizações de arquivos
O comando tail pode ser usado para monitorar atualizações de arquivos em tempo real usando a opçào -f
. Por exemplo:
tail -f exemplo.txt
Este comando mantém a janela final aberta, exibindo novas linhas adicionadas a “exemplo.txt” conforme elas ocorrem. É inestimável para rastrear atualizações ao vivo, como monitorar logs em tempo real no gerenciamento de servidores.
Exibindo bytes específicos em vez de linhas
Tail pode exibir os bytes finais de um arquivo usando a opção -c
. Por exemplo:
tail -c 100 exemplo.txt
Isso mostra os últimos 100 bytes de “exemplo.txt”. Isto é particularmente útil ao lidar com arquivos onde informações específicas de bytes são mais relevantes do que dados baseados em linhas.
Verificando vários arquivos com cabeçalhos
Ao verificar vários arquivos, use tail com a opção -q
de incluir cabeçalhos indicando nomes de arquivos:
tail -q arquivo1.txt arquivo2.txt
Você também pode combinar os comandos head e tail para exibir um intervalo específico de linhas em um arquivo. Por exemplo, para exibir as linhas 11 a 20 do arquivo “exemplo.txt”, digite o seguinte comando:
head -n 20 exemplo.txt | tail -n 10
Este comando exibe as últimas 10 linhas de ambos os arquivos, precedidas de seus respectivos nomes de arquivos. É útil para distinguir conteúdo ao monitorar vários arquivos simultaneamente.
Exibindo linhas começando em um ponto específico
Para exibir linhas começando em um número de linha específico, use o sinal +
com -n
. Por exemplo:
tail -n +15 exemplo.txt
Este comando exibe todas as linhas começando na linha 15 de “exemplo.txt”. É útil para visualizar conteúdo a partir de um determinado ponto.
Combinando Tail com outros comandos
Tail pode ser combinado com outros comandos do Linux para operações mais complexas. Por exemplo:
tail exemplo.txt | grep "erro"
Este comando exibe as últimas 10 linhas de “exemplo.txt” e as filtra para mostrar apenas as linhas que contêm a palavra “erro”.
Suprimindo mensagens de erro
Para suprimir mensagens de erro, principalmente quando os arquivos podem não existir ou estão inacessíveis, use a opção -s
:
tail -s arquivo1.txt arquivo2.txt
Este comando exibirá as últimas linhas dos arquivos sem mostrar mensagens de erro para arquivos ausentes ou inacessíveis.
Exibindo alterações de arquivo com atraso
Para atualizações menos frequentes, use a opção -s
com -f
para adicionar um atraso. Por exemplo:
tail -f -s 10 exemplo.txt
Este comando atualiza a exibição a cada 10 segundos, mostrando as últimas adições a “exemplo.txt”. É adequado para monitorar arquivos onde as atualizações não são contínuas, mas ocorrem em intervalos regulares.
Comando Tail: Mais Exemplos
O comando tail no Linux pode exibir o conteúdo de vários arquivos de uma vez. Isso pode ser útil quando você tem informações relacionadas armazenadas em arquivos separados e deseja exibi-las juntas.
Por exemplo, vamos considerar dois arquivos chamados “estados.txt” e “capitais.txt” que contêm os nomes dos estados americanos e suas capitais, respectivamente.
O arquivo “estados.txt” pode ser parecido com isto:
E o arquivo “capitais.txt” pode ser parecido com isto:
Nas duas litagens acima utilizei comando cat que lista o arquivo todo, porem não se esqueça, estamos trabalhando com o comando tail, mostraremos abaixo como funciona sua listagem.
para listarmos as capitais com o comando tail, podemos usar o seguinte:
tail capitais.txt
A saída será assim:
Como você pode ver, o comando tail exibe o conteúdo de ambos os arquivos, e o comando “colar” combina o conteúdo dos dois arquivos em uma única saída. O resultado é uma exibição dos nomes dos estados brasileiro e suas capitais, com cada estado e capital aparecendo na mesma linha.
Opções avançadas do comando Tail no Linux com exemplos de estados e capitais americanos
Além de exibir as últimas linhas de um arquivo, o comando tail no Linux oferece diversas opções avançadas que podem ser usadas para personalizar a saída. Vamos considerar dois arquivos denominados “estados.txt” e “capitais.txt” que contêm os nomes dos estados brasileiro e suas capitais, respectivamente.
tail -n 3 estados.txt
Exemplo de saída:
Você também pode usar a opção “-n” sem o caractere “n”, desde que use o símbolo “-”. Por exemplo:
tail -3 estados.txt
A saída será idêntica a que mostramos acima.
O comando tail também possui uma opção “+”, que não está presente no comando head. Com esta opção, o comando tail imprime os dados começando em um número de linha especificado no arquivo, em vez de no final do arquivo. Para o comando “tail +n nome_do_arquivo”, os dados começarão a ser impressos a partir da linha número “n” até o final do arquivo especificado.
tail +25 estados.txt
Exemplo de saídas e suas variações:
Exibindo um número específico de bytes
A opção “-c” pode exibir um número específico de bytes do final de um arquivo. Por exemplo, se você deseja exibir os últimos 6 bytes do arquivo “estados.txt”, digite o seguinte comando:
tail -c -6 estados.txt
Exemplo de saída:
deral
Alternativamente, se você deseja exibir todos os dados após pular 263 bytes do início do arquivo “estados.txt”, digite o seguinte comando:
tail -c +263 states.txt
Exemplo de saída:
pe
Tocantins
Distrito Federal
Suprimindo nomes de arquivos
Ao exibir o conteúdo de vários arquivos, o comando tail exibirá o nome de cada arquivo antes do conteúdo desse arquivo.Para suprimir os nomes dos arquivos, use a opção “-q”.Por exemplo, insira o seguinte comando para exibir o conteúdo dos arquivos “estados.txt” e “capitais.txt” sem nomes de arquivo:
tail -q estados.txt capitais.txt
Exibindo nomes de arquivos
Se quiser exibir o nome de cada arquivo antes de seu conteúdo, use a opção “-v”. Por exemplo, digite o seguinte comando para exibir o nome do arquivo “estados.txt” antes de seu conteúdo:
tail -v estados.txt
Exemplo de saída:
==> estados.txt <==
Rio de Janeiro
Rio Grande do Norte
Rio Grande do Sul
Rondônia
Roraima
Santa Catarina
São Paulo
Sergipe
Tocantins
Distrito Federal
Mostrando a versão do Tail
Para exibir a versão do comando tail atualmente em execução em seu sistema, use a opção “–version”. Por exemplo, digite o seguinte comando:
tail --version
Exemplo de saída:
tail (GNU coreutils) 8.32
Copyright (C) 2020 Free Software Foundation, Inc.
Licença GPLv3+: GNU GPL versão 3 ou posterior <https://gnu.org/licenses/gpl.html>
Este é um software livre: você é livre para alterá-lo e redistribuí-lo.
NÃO HÁ QUALQUER GARANTIA, na máxima extensão permitida em lei.
Escrito por Paul Rubin, David MacKenzie, Ian Lance Taylor
e Jim Meyering.
Monitorando arquivos de log
Os administradores de sistema geralmente usam a opção “-f” para monitorar arquivos de log gravados por programas Unix enquanto eles estão em execução. Esta opção exibe as últimas dez linhas de um arquivo e será atualizada à medida que novas linhas forem adicionadas. Por exemplo, se você tiver um arquivo de log chamado “arquivodelog”, digite o seguinte comando para monitorá-lo:
tail -f arquivodelog
Usando tail com pipes
O comando tail pode ser combinado com outros comandos Unix usando pipes. Por exemplo, você pode canalizar a saída do comando tail para o comando sort para classificar os últimos 7 nomes de estado do arquivo “estados.txt” na ordem inversa:
tail -n 7 estados.txt | sort -r
Exemplo de saída:
Tocantins
Sergipe
São Paulo
Santa Catarina
Roraima
Rondônia
Distrito Federal
Você também pode usar vários filtros para processamento adicional. Por exemplo, você pode usar os comandos cat, head e tail para armazenar a saída em um arquivo chamado “lista.txt”.
cat estados.txt | head -n 20 | tail -n 5 > lista.txt
O comando acima primeiro usa o comando cat para exibir o conteúdo do arquivo “estados.txt” e, em seguida, canaliza a saída para o comando head, que exibe as primeiras 20 linhas. A saída do comando head é então canalizada para o comando tail, que exibe as últimas 5 linhas e, finalmente, a saída é armazenada no arquivo “lista.txt” usando o operador de diretiva.
Conclusão
O comando tail no Linux é uma ferramenta simples, mas poderosa, que permite exibir as últimas linhas de um arquivo. Quer você seja um administrador de sistema ou desenvolvedor, o comando tail é essencial em seu kit de ferramentas. Seguindo este guia, você agora deve entender como usar o comando tail no Linux, bem como alguns dos recursos e opções avançadas que ele oferece.