Enumerando linhas com o comando nl

Publicado por Mauricio Ferrari em 13/04/2021

[ Hits: 4.835 ]

Blog: https://www.youtube.com/@LinuxDicasPro

 


Enumerando linhas com o comando nl



O comando nl é usado para numerar linhas de arquivos de texto e exibi-los no terminal. Está procurando uma alternativa ao cat, essa pode ser uma boa alternativa. O nl ao exibir o arquivo, te permite saber o número de linhas escritas no mesmo, conforme o exemplo a seguir:

nl Binary/onlinecheck

Veja a saída:

     1  #!/bin/bash
     2  #
     3  # ### OnlineCheck v2.1 - By Mauricio Ferrari - 02/04/2021 ###
     4  #
     5  ################################################################

     6  MSG='\n\e[31m--> Offline !\e[m\n'

     7  [ "$1" = "" ] && echo -e "\n\e[33mURL Não Especificada! \e[m\n" && exit 1
     8  [ "`curl -Is $1`" ] && MSG='\n\e[32m--> Online !\e[m\n'
     9  echo -e "$MSG"; exit 0


Podemos concluir que esse arquivo possui 9 linhas escritas de código. Mas, se você quiser que todas as linhas fossem numeradas, também é possível com esses parâmetros:

nl -ba Binary/onlinecheck

Ele gera a seguinte saída:

     1  #!/bin/bash
     2  #
     3  # ### OnlineCheck v2.1 - By Mauricio Ferrari - 02/04/2021 ###
     4  #
     5  ################################################################
     6
     7  MSG='\n\e[31m--> Offline !\e[m\n'
     8
     9  [ "$1" = "" ] && echo -e "\n\e[33mURL Não Especificada! \e[m\n" && exit 1
    10  [ "`curl -Is $1`" ] && MSG='\n\e[32m--> Online !\e[m\n'
    11  echo -e "$MSG"; exit 0


Ou seja, no total são 11 linhas. É basicamente imitante ao cat -n, só que ele não é próprio para isso. Mas, ele também é útil para numerar a saída de comandos como grep, echo e tudo o que puder gerar uma saída para ser exibido no terminal.

Vou dar um exemplo com grep:

grep '\\e' Binary/onlinecheck | nl

Veja como o nl deixou a saída bem formatadinha e numerada para visualização:

     1  MSG='\n\e[31m--> Offline !\e[m\n'
     2  [ "$1" = "" ] && echo -e "\n\e[33mURL Não Especificada! \e[m\n" && exit 1
     3  [ "`curl -Is $1`" ] && MSG='\n\e[32m--> Online !\e[m\n'


Essa é uma breve apresentação das funcionalidades do comando nl. Espero que seja útil.

Outras dicas deste autor

Como empacotar programas compilados em DEB

Resetando as Configurações do .Xresources

Resetando as Configurações do KDE Plasma 5

Adicionando e listando as regras criadas na lista de exceções do slackpkg usando egrep e sed

WhatsApp Desktop Aceitável no Deepin 20

Leitura recomendada

Montar compartilhamentos via Samba (antigo smbmount)

Como ordenar arquivos por tamanho

Tocando filmes em modo ASCII no console

mkpasswd: no DBM database on system - no action performed

Acesso remoto - Sem solicitação de senha

  

Comentários

Nenhum coment�rio foi encontrado.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts