Commande Watch sous Linux avec des exemples
Avez-vous déjà dû vous asseoir devant un terminal Linux et taper à plusieurs reprises la même commande en attendant un résultat différent ? Un exemple courant d’expérience personnelle serait de taper la commande ls en attendant qu’un certain fichier apparaisse dans un répertoire, par exemple lorsqu’un script Bash en cours d’exécution est censé générer un fichier. Car une telle situation est exactement la raison pour laquelle nous avons la commande watch sous Linux.
watch exécutera en permanence une commande spécifiée, actualisant votre écran avec la sortie mise à jour afin que vous puissiez le surveiller pour le changement souhaité que vous attendiez. Comme vous pouvez l’imaginer, c’est beaucoup plus pratique que d’appuyer constamment sur la touche fléchée vers le haut et sur Entrée encore et encore.
Peu importe que vous ayez besoin d’exécuter la même commande toutes les secondes, 10 secondes ou 10 minutes. Il est très facile de spécifier un intervalle de temps avec la commande watch. Vous pouvez également le configurer pour mettre en évidence la sortie modifiée sur votre écran, afin de savoir exactement quand vous avez obtenu le résultat que vous attendez. Dans ce guide, nous allons vous montrer toutes ces options mentionnées et quelques autres. Êtes-vous prêt à maîtriser la commande watch et à réduire le spam de votre ligne de commande ? Vous êtes sur le point de découvrir comment !
Dans ce tutoriel, vous allez apprendre :
- Comment utiliser la commande watch sous Linux
Options fréquemment utilisées
La commande watch accepte une autre commande et ses options en entrée. Il exécutera ensuite continuellement cette commande à un intervalle spécifié. Jetez un coup d’œil à certains des exemples ci-dessous pour voir comment cela fonctionne.
Commande Watch dans Linux Exemples de base
Par défaut, la commande watch exécutera la commande spécifiée toutes les 2 secondes, tout en continuant à afficher la dernière sortie dans votre terminal. Par exemple, cette commande exécuterait
ls -ltoutes les 2 secondes.watch ls -lLa sortie en haut à gauche de votre terminal indique quelle commande watch est en cours d’exécution, ainsi que la fréquence à laquelle elle l’exécute (toutes les 2 secondes dans ce cas). Le coin supérieur droit affiche la date, jusqu’aux secondes, donc même si la sortie de
ls -ln’a pas changé, vous savez toujours que la montre rafraîchit votre écran car la date continue de changer. Pour quitter la montre à tout moment, utilisez le comboclavier Ctrl + C.Vous pouvez spécifier un intervalle de temps différent pour exécuter la commande à l’aide de l’option
-nou--interval.Vous devrez spécifier la durée en secondes. Par exemple, la commande suivante exécuteraitls -ltoutes les 0,5 seconde.watch -n 0.5 ls -lUtilisez l’option
-dou--differencessi vous souhaitez que la commande watch sous Linux mette en évidence les modifications qui se produisent entre chaque actualisation. Cela peut être beaucoup plus facile que de rechercher manuellement les différences à chaque fois qu’il y a une mise à jour. Vous pouvez également utiliser l’option-d=permanentsi vous souhaitez que la mise en surbrillance reste permanente lors des actualisations successives.watch -d dateDans cet exemple, nous observons la commande
datepour illustrer la façon dont les modifications sont mises en évidence. Dans la capture d’écran ci-dessous, remarquez comment la montre a mis en évidence trois caractères qui ont changé. C’est parce que l’horloge a tourné à une minute différente, et la sortie de ladatel’a reflété dans sa sortie.Peut-être qu’au lieu de mettre en évidence les modifications, vous préféreriez que la montre se ferme complètement lorsqu’une modification est détectée. Cela peut être réalisé en mettant l’option
-gou--chgexitdans votre commande.watch -g ls -l
Vous pouvez toujours utiliser la commande man pour en savoir plus sur la commande watch et sa documentation officielle. Cliquez sur le lien précédent pour voir comment ouvrir les pages de manuel pour n’importe quelle commande sur un système Linux.
Utilisation avancée
Les commandes ci-dessus ont couvert certaines des options les plus fréquemment utilisées pour la commande watch sous Linux, mais il y a encore plus d’options disponibles. Consultez les exemples suivants pour voir certaines des utilisations les plus avancées de la montre et certaines options que vous ne voyez peut-être pas très souvent utilisées.
Si vous n’aimez pas voir le texte en haut de l’écran de la montre, où il indique quelle commande est en cours d’exécution et à quel intervalle, vous pouvez vous en débarrasser avec l’option
-tou--no-title.watch -t dateVous pouvez enchaîner plusieurs commandes en les mettant entre guillemets.
watch -t 'date && ls -l'L’option
-pou--precisepermettra à la montre d’être très précise en synchronisant ses mises à jour avec les serveurs de temps officiels.watch -p ls -lUtilisez l’option
-bou--bippour que votre système émette un bip sonore lorsqu’une commande se termine avec une sortie non nulle.watch -b tail /var/logs/apache.logUtilisez l’option
-eou--errexitpour que l’écran de surveillance cesse de se mettre à jour lorsque la commande rencontre une erreur. Cela vous permettra de ne pas manquer une erreur potentielle sur votre écran en l’actualisant et en l’écrasant à l’intervalle spécifié.watch -e tail /var/logs/apache.log
Réflexions finales
Dans ce guide, nous avons tout appris sur la commande watch sous Linux. La commande de la montre vise à offrir plus de commodité et à protéger nos poignets du canal carpien. Plutôt que de spammer la même commande encore et encore, watch le fait pour nous. Les options couvertes dans ce guide vous aideront à tirer le meilleur parti de cet utilitaire pratique.




