Vous pouvez anticiper l'exécution d'une commande (à condition qu'elle ne soit pas interactive) et saisir !!
qui exécutera à nouveau la commande précédente. Cela fonctionne, par exemple, pendant ping -c 5
.
Vous pouvez également définir une fonction dans bash
:
function repeat { "$@"; "$@"; }
Pour le faire persister, il faut le stocker dans ~/.bashrc
.
Ensuite, vous pouvez exécuter votre commande comme ceci :
repeat ping -c5 heise.de
Si c'est une commande spécifique que vous voulez exécuter de manière répétée (et non pas par exemple cualquier ), vous pouvez remplacer "$@"
dans ce snippet avec votre commande réelle, et nommez la fonction par ex. repeat_ping
à la place.
Pour en faire une boucle infinie, vous pouvez faire ce que @Dennis suggère. Je vous recommande d'ajouter une période d'attente si vous avez l'intention d'utiliser ceci dans un Shell interactif, comme ceci :
function repeat { while 1 ; do "$@" ; sleep 1 ; done; }
Sinon, il est plutôt malcommode d'interrompre cette boucle infinie en utilisant Ctrl-Z
.