GNU/Linux >> Tutoriels Linux >  >> Linux

Regardez les commandes et les tâches avec la commande Linux watch

Il arrive souvent que vous deviez attendre que quelque chose se termine, par exemple :

  • Un téléchargement de fichier.
  • Créer ou extraire un fichier tar.
  • Une tâche Ansible.

Certains de ces processus ont une sorte d'indication de progrès, mais parfois le processus est exécuté à travers une couche d'abstraction, et la seule façon de mesurer le progrès est à travers ses effets secondaires. Certains d'entre eux pourraient être :

  • Un fichier en cours de téléchargement ne cesse de croître.
  • Un répertoire extrait d'une archive tar se remplit de fichiers.
  • La tâche Ansible crée un conteneur.

Vous pouvez interroger toutes ces choses avec des commandes comme celles-ci :

$ ls -l downloaded-file
$ find . | wc -l
$ podman ps
$ docker ps

Mais exécuter ces commandes encore et encore, même si c'est avec la commodité de l'historique de Bash et de la flèche vers le haut , est fastidieux.

Une autre approche consiste à écrire un petit script Bash pour automatiser ces commandes pour vous :

while :
do
  docker ps
  sleep 2
done

Mais de tels scripts peuvent aussi devenir fastidieux à écrire. Vous pouvez écrire un petit script générique et l'empaqueter pour qu'il soit toujours disponible. Heureusement, d'autres développeurs open source sont déjà passés par là et l'ont fait.

Le résultat est la commande watch .

Plus de ressources Linux

  • Aide-mémoire des commandes Linux
  • Aide-mémoire des commandes Linux avancées
  • Cours en ligne gratuit :Présentation technique de RHEL
  • Aide-mémoire sur le réseau Linux
  • Aide-mémoire SELinux
  • Aide-mémoire sur les commandes courantes de Linux
  • Que sont les conteneurs Linux ?
  • Nos derniers articles Linux

Installation de la montre

La watch la commande fait partie du procps-ng package, donc si vous êtes sous Linux, vous l'avez déjà installé.

Sur macOS, installez watch en utilisant MacPorts ou Homebrew. Sous Windows, utilisez Chocolatey.

Utiliser la montre

La watch La commande exécute périodiquement une commande et affiche sa sortie. Il a quelques subtilités de terminal texte, donc seule la dernière sortie est à l'écran.

L'utilisation la plus simple est :watch <command> .

Par exemple, préfixer le docker ps commande avec watch fonctionne comme ceci :

$ watch docker ps

La watch commande, et quelques astuces créatives en ligne de commande Unix, peuvent générer des tableaux de bord ad hoc. Par exemple, pour compter les événements d'audit :

$ watch 'grep audit: /var/log/kern.log |wc -l'

Dans le dernier exemple, il est probablement utile s'il y a une indication visuelle que le nombre d'événements d'audit a changé. Si un changement est attendu, mais que vous voulez que quelque chose ait l'air "différent", watch --differences fonctionne bien. Il met en évidence les différences par rapport à la dernière exécution. Cela fonctionne particulièrement bien si vous gérez plusieurs fichiers, vous pouvez donc facilement voir lequel a changé.

Si des changements ne sont pas attendus, vous pouvez demander qu'ils soient mis en surbrillance "en permanence" pour savoir lesquels étudier en utilisant watch --differences=permanent . C'est souvent plus utile.

Fréquence de contrôle

Enfin, la commande peut parfois être gourmande en ressources et ne doit pas être exécutée trop fréquemment. Le -n paramètre contrôle la fréquence. La montre utilise deux secondes par défaut, mais watch -n 10 peut être approprié pour quelque chose de plus gourmand en ressources, comme chercher un modèle dans n'importe quel fichier d'un sous-répertoire :

$ watch -n 10 'find . -type f | xargs grep suspicious-pattern'

Regarder une commande avec watch

La watch La commande est utile pour de nombreuses tâches d'administration système ad hoc où vous devez attendre une étape fastidieuse, sans barre de progression, avant de passer à la suivante. Bien que ce ne soit pas une situation idéale, watch peut l'améliorer légèrement et vous donner le temps de commencer à travailler sur ces notes pour la rétrospective ! Télécharger l'aide-mémoire  pour garder la syntaxe et les options utiles à portée de main.


Linux
  1. Planification des tâches avec la commande Linux cron

  2. Faire pivoter et archiver les journaux avec la commande Linux logrotate

  3. Rechercher des fichiers et des répertoires sous Linux avec la commande find

  4. Commandes Linux - Présentation et exemples

  5. Commandes Linux :jobs, bg et fg

Commande Linux watch avec exemples

7 façons d'utiliser la commande Linux Watch

Les commandes alias et unalias expliquées avec des exemples

Comment rechercher des fichiers avec la commande fd sous Linux

5 des commandes les plus ennuyeuses de Linux

Les 40 commandes de serveur Linux utiles pour les débutants et les professionnels