Cómo repetir un comando N veces en Linux

En determinadas situaciones debemos ejecutar un comando en bucle dentro de la consola de Linux o en un script. En este tutorial te enseñaremos cómo.

Curso de Vagrant

En este curso aprenderás a utilizar Vagrant para poder crear tus propias máquinas virtuales con diferentes sistemas operativos en cuestión de minutos. Con Vagrant mejorarás tu productividad y tendrás tu entorno de desarrollo configurado rápidamente. ¿Quieres saber más? ¡Apúntate!

Comenzar ahora

¿Cómo ejecutar un comando 10 (o N) veces en una terminal de Linux?

Es posible que te hayas hecho esa pregunta alguna vez, y si no, puedes aprovechar este artículo para conocer más acerca de la consola de Linux.

Hay varias maneras diferentes dependiendo de si utilizas bash o ZSH.

Para las pruebas, vamos a suponer que tenemos un script en bash que ejecuta el comando date. Será el archivo script.sh:

#!/bin/bash

date

Además, lo vamos a hacer ejecutable con el siguiente comando:

sudo chmod +x script.sh

Bucle for

La sintaxis del bucle for comprimida sería la siguiente:

for i in {1..5}; do ./script.sh; done

También podríamos hacer directamente dentro del script:

for i in {1..5}; do date; done

Bucle while

El bucle while es parecido al bucle for aunque parece algo más complejo a simple vista. Vamos a editar el archivo script.sh para que ejecute el comando date 5 veces:

#!/bin/bash

times=5
while [ $times -gt 0 ];
do
  date
  times=$(($times-1))
done

repeat para usuarios de ZSH

Si estás utilizando ZSH, puedes usar el comando repeat:

repeat 5 { date }

¿Quieres seguir aprendiendo?