Table des matières

, , , , , ,

Commandes linux qui sauvent la vie

Voici un petit tas de commandes qui sauvent la vie :

Lancer une commande avec un timeout

La commande timeout existe :

timeout 10 sleep 11

Pour l'installer si vous ne l'avez pas :

# apt-get install coreutils

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) :

/usr/bin/setlock -n /var/lock/mon_lock.lock /chemin/vers/mon/script.sh

Pour l'installer si vous ne l'avez pas :

# apt-get install daemontools

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 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 :

# apt-get install reptyr

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 :

# watch ntpq -p -n