Si et comment est-il possible, en Terminal
, de faire fonctionner une application pendant 30 secondes, avant de la fermer de force et de faire écho aux journaux de ce processus?
Si et comment est-il possible, en Terminal
, de faire fonctionner une application pendant 30 secondes, avant de la fermer de force et de faire écho aux journaux de ce processus?
Réponses:
Vous voudrez peut-être utiliser la commande timeout .
timeout -k 10s 30s command
qui exécutera la commande pendant 30 secondes et la tuera après 10 secondes si elle est toujours en cours d'exécution. - Consultez la page de manuel pour plus d'options.
watch
me semble être une commande très intéressante. Pourrait être utile ...
Voici deux façons (mais la timeout
commande suggérée par mcantsin est probablement meilleure):
Lancez la commande en arrière-plan, de cette façon son PID est enregistré $!
et vous pouvez l'utiliser pour le tuer après l'heure spécifiée:
command &
sleep 30 && kill $!
Lancez la commande et utilisez pkill
ou killall
pour la tuer. ATTENTION: Cela suppose qu'une seule commande avec ce nom est en cours d'exécution, j'utilise firefox
comme exemple:
firefox &
sleep 30 && pkill firefox
Je n'ai aucune idée de ce que vous entendez par «les journaux de ce processus» mais l'erreur standard d'un processus peut être enregistrée dans un fichier avec command 2> logfile.txt
.