Enumerando linhas com o comando nl

Publicado por Mauricio Ferrari em 13/04/2021

[ Hits: 3.768 ]

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

Troque o Basename por Expansão de Parâmetros

TimeShift no Slackware

Digitar comandos no terminal em várias linhas

Instalando corretamente o Wine atualizado no Debian, Ubuntu, Linux Mint e derivados

Convertendo Segundos em Horas Usando Bash

Leitura recomendada

Como fazer Ubuntu reconhecer a placa de rede NVIDIA Corporation MCP61 Ethernet (rev a2)

Problema com o SU?

Instalação do eDEX-UI no Linux

Transferindo arquivos com o netcat

Bloquear tela no Cinnamon via terminal

  

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