Différences
Ci-dessous, les différences entre deux révisions de la page.
Prochaine révision | Révision précédente | ||
sysadmin:tips:commandes [2012/10/08 10:31] james créée |
sysadmin:tips:commandes [2019/01/28 10:38] (Version actuelle) james [Lancer une commande plein de fois de suite en espérant voir un changement] |
||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
- | {{tag>commandes lock timeout indispensables}} | + | {{tag>commande lock timeout indispensable reptyr watch commandes_utiles}} |
====== Commandes linux qui sauvent la vie ====== | ====== Commandes linux qui sauvent la vie ====== | ||
Ligne 5: | Ligne 5: | ||
Voici un petit tas de commandes qui sauvent la vie : | Voici un petit tas de commandes qui sauvent la vie : | ||
- | ====== Lancer une commande avec un timeout ====== | + | ===== Lancer une commande avec un timeout ===== |
La commande //timeout// existe :<code>timeout 10 sleep 11</code> | La commande //timeout// existe :<code>timeout 10 sleep 11</code> | ||
Ligne 11: | Ligne 11: | ||
Pour l'installer si vous ne l'avez pas : <code># apt-get install coreutils</code> | Pour l'installer si vous ne l'avez pas : <code># apt-get install coreutils</code> | ||
- | ====== Lancer une commande en créant un fichier de lock ====== | + | Référence : http://www.commandlinefu.com/commands/view/3592/execute-a-command-with-a-timeout |
+ | |||
+ | ===== Lancer une commande en créant un fichier de lock ===== | ||
Pour lancer une commande sans risquer qu'une autre exécution se fasse en parallèle (cas d'un cron régulier qui mettrait trop de temps a s'exécuter par exemple) :<code>/usr/bin/setlock -n /var/lock/mon_lock.lock /chemin/vers/mon/script.sh | Pour lancer une commande sans risquer qu'une autre exécution se fasse en parallèle (cas d'un cron régulier qui mettrait trop de temps a s'exécuter par exemple) :<code>/usr/bin/setlock -n /var/lock/mon_lock.lock /chemin/vers/mon/script.sh | ||
Ligne 17: | Ligne 19: | ||
Pour l'installer si vous ne l'avez pas : <code># apt-get install daemontools</code> | Pour l'installer si vous ne l'avez pas : <code># apt-get install daemontools</code> | ||
+ | |||
+ | ===== Attacher un processus existant a un nouveau terminal ===== | ||
+ | Vous avez deja lancé un processus très long en SSH alors que vous devez partir mais vous n'avez pas envie d'interrompre ce processus ? | ||
+ | Démarrez juste un screen (encore une autre commande indispensable ;) ), et utilisez [[https://github.com/nelhage/reptyr|reptyr]] pour attacher ce processus existant dans votre screen. Vous pouvez alors quitter le SSH et rentrer chez vous. | ||
+ | |||
+ | Pour l'installer si vous ne l'avez pas : <code># apt-get install reptyr</code> | ||
+ | |||
+ | |||
+ | Référence : http://blog.nelhage.com/2011/01/reptyr-attach-a-running-process-to-a-new-terminal/ | ||
+ | |||
+ | ===== Lancer une commande plein de fois de suite en espérant voir un changement ===== | ||
+ | Vous êtes adepte de lancer une commande 15 000 fois en faisant "flèche du haut" et "entrée" et recommencer jusqu’à espérer voir un changement dans le résultat ? | ||
+ | |||
+ | Vous ne connaissez alors certainement pas l'outil watch : "watch macommande %%--%%mes-arguments" permet de lancer toutes les X secondes (par défaut 2) votre commande "macommande %%--%%mes-arguments". Le résultat de la commande reste affiché a l'écran jusqu'au prochain lancement de votre commande. | ||
+ | Très utile pour par exemple surveiller la synchronisation de votre serveur NTP après (re)démarrage : <code># watch ntpq -p -n</code> | ||
+ |