GNU/Linux >> Tutoriales Linux >  >> Linux

Tutorial del comando shuf de Linux para principiantes (con ejemplos)

Si alguna vez jugaste al juego de cartas, es probable que conozcas el término barajar. Un poco difícil de imaginar, hay una herramienta de línea de comandos de Linux que hace exactamente eso con las líneas de los archivos. En este tutorial, discutiremos los conceptos básicos del comando 'shuf' usando algunos ejemplos fáciles de entender.

Pero antes de hacerlo, vale la pena mencionar que todos los ejemplos aquí se han probado en una máquina con Ubuntu 18.04 LTS.

Comando shuf de Linux

El comando shuf en Linux te permite generar permutaciones aleatorias. La siguiente es su sintaxis:

shuf [OPTION]... [FILE]

Y así es como lo explica la página de manual de la herramienta:

Write a random permutation of the input lines to standard output.

Los siguientes son algunos ejemplos de preguntas y respuestas que deberían darle una mejor idea de cómo funciona el comando shuf.

P1. ¿Cómo usar el comando shuf?

El uso básico es muy simple. Simplemente pase un nombre de archivo como entrada. He aquí un ejemplo:

shuf test.txt

Ahora, el archivo test.txt contiene las siguientes líneas:

1
2
3
4
5
6
7
8
9

Pero el comando shuf anterior produjo el siguiente resultado:

3
4
6
5
1
8
2
7
9

Así que puedes ver que las líneas se mezclaron.

P2. ¿Cómo limitar el número de líneas en la salida?

Si desea limitar la cantidad de líneas en la salida aleatoria, use la opción de línea de comando -n, que requiere que pase un número que represente la cantidad máxima de líneas que desea en la salida.

Por ejemplo:

shuf -n 3 test.txt

El comando anterior produjo el siguiente resultado:

6
4
9

P3. ¿Cómo permitir la repetición de líneas en la salida?

Suponga que el archivo de entrada contiene 9 líneas, pero desea que shuf produzca más líneas que las de salida (usando la opción -n discutida anteriormente). Esto se puede hacer usando la opción -r.

-r, --repeat
              output lines can be repeated

Entonces, si desea que shuf produzca 25 líneas en la salida, ejecute el siguiente comando:

shuf -r -n 25 test.txt

Aquí está el resultado que produjo este comando:

6
8
4
5
9
3
3
1
2
5
7
5
9
5
8
5
2
8
8
7
4
4
8
5
3

P4. ¿Cómo hacer que shuf trate los argumentos de entrada como líneas?

Para esto, use la opción de línea de comando -e. He aquí un ejemplo:

shuf -e 1 2 3 4 5 6 7 8 9

Aquí está la salida producida por este comando:

9
1
7
8
6
2
3
5
4

Conclusión

De acuerdo, shuf no es el tipo de herramienta que necesitaría todos los días, pero no hay nada de malo en aprender sobre esta utilidad, especialmente porque su curva de aprendizaje no es tan pronunciada. Una vez que haya terminado de practicar lo que hemos discutido aquí, diríjase a la página de manual de la herramienta para obtener más información al respecto.


Linux
  1. Linux expand Command Tutorial para principiantes (con ejemplos)

  2. Tutorial de comando de factor Linux para principiantes (con ejemplos)

  3. Tutorial del comando nproc de Linux para principiantes (con ejemplos)

  4. Tutorial de comando de suspensión de Linux para principiantes (con ejemplos)

  5. Tutorial de comando Linux basename para principiantes (con ejemplos)

Tutorial de comando Linux sha1sum para principiantes (con ejemplos)

Tutorial de comandos de apariencia de Linux para principiantes (con ejemplos)

Tutorial del comando lsattr de Linux para principiantes (con ejemplos)

Tutorial del comando tload de Linux para principiantes (con ejemplos)

Tutorial del comando Linux znew para principiantes (con ejemplos)

Tutorial de comando Linux tr para principiantes (con ejemplos)