Enumerando linhas com o comando nl

Publicado por Mauricio Ferrari em 13/04/2021

[ Hits: 4.675 ]

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

Correção do warning: setlocale: LC_ALL: cannot change locale (pt_BR.UTF-8) no ArchLinux, Manjaro, BigLinux, Junest (mini Arch Linux)

Letras Bacanas no seu Shell Script sem Figlet

Gambiarra para Atualizar o Menu de Aplicativos no KDE

Skype Atualizado no Ubuntu e Linux Mint

BleachBit 4.1.0 no Deepin

Leitura recomendada

Listando pacotes no Debian

Mudando o relógio no Linux

Comandos grep, fgrep e egrep

Aproveitando o Poder do Comando grep no Linux

Corrigir os erros "5: Input/output error" ou "cache file is corrupted" no Ubuntu

  

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