GNU/Linux >> Tutoriels Linux >  >> Linux

Ré-exécutez continuellement une commande lorsqu'elle se termine dans Bash

Le watch commande répétera une commande indéfiniment avec un intervalle spécifié :

watch -n0 <command>

Réglage -n à zéro met effectivement l'intervalle à zéro (je pense que c'est vraiment 0,1 seconde).

watch a également l'avantage supplémentaire d'aligner la sortie afin que les changements visuels puissent être vus facilement, et dispose d'un interrupteur pour mettre en évidence les changements depuis la dernière exécution.

Référence :la page de manuel de la montre :

watch exécute la commande à plusieurs reprises, affichant sa sortie (le premier plein écran). Cela vous permet de regarder la sortie du programme changer au fil du temps. Par défaut, le programme est exécuté toutes les 2 secondes; utilisez -n ou --interval pour spécifier un intervalle différent.

la montre fonctionnera jusqu'à ce qu'elle soit interrompue.


Cela crée une boucle infinie, exécutant command encore et encore.

while :
do
    command
done

Une solution simple serait :

yourcommand; !#

; sépare les commandes, permettant plusieurs commandes sur une seule ligne (Bash :listes)

!# dit à bash de "répéter tout ce que j'ai écrit jusqu'à présent dans cette ligne" (Bash :Event-Designators)


Linux
  1. Commande Watch sous Linux [avec exemples]

  2. commande d'exportation bash

  3. Exécutez la commande bash sur le pipeline jenkins

  4. commande bash watch avec conservation des couleurs

  5. Comment enregistrer + fermer le fichier lors de l'édition en bash ?

Commande de sortie Bash et codes de sortie

Commande Bash printf

Commande Linux watch avec exemples

Script bash (II)

Script bash (III)

Utilisation de la commande Watch sous Linux