Comando nl en Linux con ejemplos

Linux ofrece una amplia gama de comandos para formatear y editar texto. Mientras edita un archivo de texto, es posible que desee mostrar las líneas con números de línea adjuntos antes de ellas, y aquí viene el juego de roles del comando nl en LinuxEl comando nl es una utilidad de Unix/Linux que se usa para numerar líneas, aceptando entradas de un archivo o de STDIN . Copia cada archivo especificado a STDOUT , con números de línea adjuntos antes de las líneas. 

Sintaxis:

nl [OPTION]... [FILE]...

Opciones:

-b NUMBER or -bNUMBER : used for numbering body lines
-i NUMBER or -iNUMBER : line number increment at each line
-n FORMAT or -nNUMBER : insert line numbers according to FORMAT
-v NUMBER or -vNUMBER : change first line number of the given input 
-l NUMBER or -lNUMBER : group of NUMBER empty lines are counted as one
-s STRING or -sSTRING : add any STRING after every logical line number
-w NUMBER or -wNUMBER : use different NUMBER columns for line numbers

Ejemplos:

Nota: Considere el siguiente archivo como entrada en todos los ejemplos.

nl command in linux

1. Para mostrar un archivo con números de línea: Numere todas las líneas que no estén vacías. 

$ nl geekfile.txt

To display a file with line numbers

2. Para numerar todas las líneas (incluidas también las líneas vacías): la opción -ba se usa para numerar todas las líneas, ya sea que estén vacías o no.

$ nl -b a geekfile.txt

To number all lines (including empty lines also)

3. Cuente varias líneas consecutivas que no estén vacías como una: la opción -l se usa para contar todas las líneas que no estén vacías como una sola línea lógica para el comando nl. Linux considera NÚMERO de líneas vacías consecutivas como una sola línea lógica para la numeración, y solo números el último. Si se producen líneas consecutivas vacías inferiores a NÚMERO , las descartará.

$ nl -l 1 geekfile.txt 
## is same as 
## $ nl geekfile.txt

El siguiente ejemplo considera 3 líneas vacías consecutivas como una sola línea lógica. 

$ nl -b a -l 3 geekfile.txt

Aquí, la opción -ba se usa para considerar todas las líneas lógicas (ya sean vacías o no vacías) como entrada al comando nl.

Count multiple, consecutive, non-empty lines as one

4. Anular el incremento predeterminado: el patrón de incremento predeterminado en Linux es 1. Esto se puede cambiar usando la opción -i . El número de la primera línea es 1 y no se puede cambiar usando -i .

$ nl -i 3 geekfile.txt
or
$ nl -i3 geekfile.txt

 Override default increment

5. Para hacer que el número de línea inicial sea diferente: El número de línea predeterminado es 1. Esto se puede cambiar usando la opción -v.

nl -v 4 geekfile.txt
or
nl -v4 geekfile.txt

To make the starting line number different:

6. Agregue un literal de string después de los números de línea: cualquier literal de CADENA se puede agregar después de un número de línea usando la opción -s.

$ nl -s "..." geekfile.txt

Add a string literal after line numbers:

7. Cambiar columna para números de línea: Se pueden usar diferentes columnas para mostrar la salida del archivo usando la opción -w. El número de columna predeterminado es 1.

$ nl -w2 geekfile.txt
$ nl -w4 geekfile.txt
$ nl -w6 geekfile.txt
or
$ nl -w 2 geekfile.txt
$ nl -w 4 geekfile.txt
$ nl -w 6 geekfile.txt

Observe el cambio en el número de columna (aumento en la sangría desde la izquierda) en el ejemplo ilustrado a continuación.

Change column for line numbers

8. Para numerar todas las líneas lógicas que coincidan con el REGEX especificado: la opción -b pREGEXP se puede usar para agregar números de línea antes de aquellas líneas que coincidan con el patrón dado. El siguiente comando numerará aquellas líneas que comiencen con F .

$ nl -b pF geekfile.txt

To number all logical lines that match the specified REGEX

9. Para imprimir las líneas usando un formato de número diferente: Los formatos de numeración se pueden especificar usando la opción -n. El formato de numeración predeterminado es rn . Las opciones disponibles son:

  • ln -> justificado a la izquierda, sin ceros a la izquierda
  • rn -> justificado a la derecha, sin ceros a la izquierda
  • rz -> justificado a la derecha con ceros a la izquierda
$ nl -n ln geekfile.txt
$ nl -n rn geekfile.txt
$ nl -n rz geekfile.txt

To print the lines using a different number format

Publicación traducida automáticamente

Artículo escrito por yashbeersingh42 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *