Eu não acho que um comando ou shell embutido para isso exista, já que é um subconjunto trivial para o qual o loop do Bourne shell for
é projetado e implementar um comando como este por si mesmo é, portanto, bastante simples.
Para iniciantes, você pode usar um falso for
loop:
for i in 'seq 10'; do command; done
Ou de forma equivalente, de acordo com a sugestão de JimB, usando o Bash incorporado para gerar sequências:
for i in {1..10}; do command; done
Isso itera dez vezes executando command
de cada vez - pode ser um canal ou uma série de comandos separados por ;
ou &&
. Você pode usar a variável $i
para saber em qual iteração você está.
Se você considera este one-liner um script e então por algum motivo não especificado (mas talvez válido) indesejável você pode implementá-lo como um comando, talvez algo assim em seu .bashrc (não testado):
#function run
run() {
number=$1
shift
for i in 'seq $number'; do
$@
done
}
Uso:
run 10 command
Exemplo:
run 5 echo 'Hello World!'