De acordo com as Leis 12.965/2014 e 13.709/2018, que regulam o uso da Internet e o tratamento de dados pessoais no Brasil, ao me inscrever na newsletter do portal DICAS-L, autorizo o envio de notificações por e-mail ou outros meios e declaro estar ciente e concordar com seus Termos de Uso e Política de Privacidade.
Colaboração: Rubens Queiroz de Almeida
Data de Publicação: 12 de setembro de 2024
O batcat
é uma versão aprimorada do tradicional comando cat
no Linux, projetado para exibir o conteúdo de arquivos de forma mais legível e visualmente atraente. Ele é parte do pacote bat
, que combina a funcionalidade do cat
com recursos adicionais, como destaque de sintaxe, numeração de linhas, e integração com o Git.
A motivação por trás do batcat
foi melhorar a experiência de visualização de arquivos no terminal. Enquanto o cat
é eficiente para concatenar e visualizar arquivos simples, ele não oferece recursos de formatação que podem facilitar a leitura, especialmente para desenvolvedores que trabalham com arquivos de código fonte. O batcat
foi criado para preencher essa lacuna, tornando a leitura de arquivos mais intuitiva e organizada.
Para instalar em sistemas Debian GNU/Linux e derivados, digite:
$ sudo apt install bat
Após a instalação, o comando pode ser executado como batcat
para evitar conflitos com o cat
tradicional.
batcat
oferece destaque de sintaxe para mais de 50 linguagens de programação, tornando-o ideal para desenvolvedores que precisam visualizar código fonte.
batcat
permite a navegação em arquivos grandes sem precisar de um pager externo como o less
.
Visualizar um Arquivo com Destaque de Sintaxe:
$ batcat arquivo.py
Concatenar e Exibir Múltiplos Arquivos:
$ batcat arquivo1.txt arquivo2.txt
Integrar com Git para Mostrar Diferenças:
$ git diff commit1 commit2 | batcat --paging=always -l diff
Usar como Pager para Comandos:
$ find . -name \*.txt | batcat
Buscar por arquivos exibindo seu conteúdo em seguida com o comando batcat
:
$ find -name \*.txt -exec batcat {} +
O comando acima busca por arquivos com o sufixo .txt
. Para cada arquivo encontrado é invocado o comando batcat
para que seu conteúdo seja exibido. A diretiva +
no final do comando -exec
é utilizada para otimizar a execução do comando batcat
em múltiplos arquivos. Ao invés de executar o batcat
separadamente para cada arquivo encontrado, o +
faz com que o find
passe todos os arquivos encontrados de uma vez só para o batcat
. Isso é mais eficiente do que usar \;
, que executaria o comando para cada arquivo individualmente.
-exec batcat {} \;
: Executa o batcat
para cada arquivo individualmente, um por um.
-exec batcat {} +
: Executa o batcat
uma vez para todos os arquivos encontrados, passando-os como argumentos. Isso pode ser mais rápido, especialmente quando há muitos arquivos, pois reduz o número de vezes que o comando batcat
é chamado.
Portanto, usar +
é uma prática recomendada quando se deseja eficiência ao processar múltiplos arquivos com o -exec
.
Para saber mais sobre o comando batcat
, consulte a documentação no portal Github, onde você encontrará uma grande quantidade de exemplos muito úteis.