Comandos Linux · 2 min read · Jan 11, 2026
Tutorial del comando shuf de Linux para principiantes (con ejemplos)

Si alguna vez has jugado a las cartas, probablemente estés familiarizado con 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 en los archivos. En este tutorial, discutiremos los conceptos básicos del comando ‘shuf’ utilizando algunos ejemplos fáciles de entender.
Pero antes de hacer eso, vale la pena mencionar que todos los ejemplos aquí han sido probados en una máquina Ubuntu 18.04 LTS.
Comando shuf de Linux
El comando shuf en Linux te permite generar permutaciones aleatorias. A continuación se muestra su sintaxis:
shuf [OPCIÓN]... [ARCHIVO]Y así es como la página del manual de la herramienta lo explica:
Escribe una permutación aleatoria de las líneas de entrada en la salida estándar.A continuación se presentan algunos ejemplos en formato de preguntas y respuestas que deberían darte una mejor idea de cómo funciona el comando shuf.
P1. ¿Cómo usar el comando shuf?
El uso básico es muy simple. Solo pasa un nombre de archivo como entrada. Aquí hay un ejemplo:
shuf test.txtAhora, el archivo test.txt contiene las siguientes líneas:
1
2
3
4
5
6
7
8
9Pero el comando shuf anterior produjo la siguiente salida:
3
4
6
5
1
8
2
7
9Así que puedes ver que las líneas se barajaron.
P2. ¿Cómo limitar el número de líneas en la salida?
Si deseas limitar el número de líneas en la salida de shuf, usa la opción de línea de comandos -n, que requiere que pases un número que representa el conteo máximo de líneas que deseas en la salida.
Por ejemplo:
shuf -n 3 test.txtEl comando anterior produjo la siguiente salida:
6
4
9P3. ¿Cómo permitir la repetición de líneas en la salida?
Supongamos que el archivo de entrada contiene 9 líneas, pero deseas que shuf produzca más líneas que eso en la salida (usando la opción -n discutida anteriormente). Esto se puede hacer utilizando la opción -r.
-r, --repeat
las líneas de salida pueden repetirseAsí que si deseas que shuf produzca 25 líneas en la salida, entonces ejecuta el siguiente comando:
shuf -r -n 25 test.txtAquí está la salida 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
3P4. ¿Cómo hacer que shuf trate los argumentos de entrada como líneas?
Para esto, usa la opción de línea de comandos -e. Aquí hay un ejemplo:
shuf -e 1 2 3 4 5 6 7 8 9Aquí está la salida producida por este comando:
9
1
7
8
6
2
3
5
4Conclusión
De acuerdo, shuf no es el tipo de herramienta que necesitarías todos los días, pero no hay daño en aprender sobre esta utilidad, especialmente dado que su curva de aprendizaje no es tan empinada. Una vez que hayas terminado de practicar lo que hemos discutido aquí, dirígete a la página del manual de la herramienta para saber más sobre ella.
Recibe nuevas publicaciones en tu bandeja de entrada.
No spam. Cancela la suscripción en cualquier momento.