Enumerando linhas com o comando nl

Publicado por Mauricio Ferrari em 13/04/2021

[ Hits: 1.617 ]

Blog: https://github.com/mxnt10

 


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

Comando CUT usando delimitador TAB

Claws Mail - Erro na conexão com imap.google.com: login recusado [Resolvido]

Expandindo o Til pelo Diretório Inicial do Usuário em Python

Usando "sscanf" para Dividir String com Delimitadores em C

Google Chrome no SliTaz 5.0

Leitura recomendada

Script para instalação do Fluxbox no Void Linux

Enviando e-mail com Mutt no Ubuntu 10.04.4 LTS

O comando chage

Unrpm - Descompactando arquivos RPM

Limpando arquivos .conf muito comentados

  

Comentários

Nenhum comentário foi encontrado.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts