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 Linux . El 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.
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
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
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.
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
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
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
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.
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
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
Publicación traducida automáticamente
Artículo escrito por yashbeersingh42 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA