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.