Existe-t-il une commande «watch» native de Darwin / OS X?
14
J'ai un script que j'essaye de porter de Linux vers Darwin / OS X. La version Linux dépend actuellement de la watchcommande, qui ne semble pas être installée sur Darwin / OS X par défaut. Quelle est l'alternative native?
Il n'y a pas d'alternative native. Vous devez acquérir en watchutilisant Homebrew ( brew install watch) ou MacPorts ( port install watch) si vous avez besoin d'un exécutable réel.
Vous pouvez cependant émuler la fonction de watch. Cela peut être accompli dans une boucle bash while standard ( de Stack Overflow par Daniel Pittman ):
Vous pouvez émuler les fonctionnalités de base avec la boucle shell:
while:;do clear; your_command; sleep 2;done
Cela restera en boucle pour toujours, effacera l'écran, exécutera votre commande et attendra deux secondes - la mise en œuvre de base de votre commande.
Vous pouvez aller un peu plus loin et créer un script watch.sh qui peut accepter your_command et sleep_duration comme paramètres:
#!/bin/bash# usage: watch.sh <your_command> <sleep_duration>while:;do
clear
date
$1
sleep
$2done
Réponses:
Il n'y a pas d'alternative native. Vous devez acquérir en
watch
utilisant Homebrew (brew install watch
) ou MacPorts (port install watch
) si vous avez besoin d'un exécutable réel.Vous pouvez cependant émuler la fonction de
watch
. Cela peut être accompli dans une boucle bash while standard ( de Stack Overflow par Daniel Pittman ):Cela et d'autres options sont disponibles sur Stack Overflow.
la source