Linux : Savoir si un process toure ou pas
guigeek
-
jipicy Messages postés 41342 Statut Modérateur -
jipicy Messages postés 41342 Statut Modérateur -
Bonjour,
Je cherche sous Linux (en fait sur un Synology) à ne lancer une commande que si un process ne tourne pas... Je ne connait pas son PID, uniquement sa description
Donc en gros, je lance mon script via le cron. Si "wget" tourne, il ne fait rien. Si "wget" ne tourne pas, il execute une commande.
J'ai pensé à un
if [ps -ax | grep 'wget']
then
wget http://www.site.org/rep/01/fichier.txt
fi
Est ce que ca a une chance de marcher ? (je n'ai pas accès a mon Linux avant demain soir...)
Merci par avance
Guigeek
Je cherche sous Linux (en fait sur un Synology) à ne lancer une commande que si un process ne tourne pas... Je ne connait pas son PID, uniquement sa description
Donc en gros, je lance mon script via le cron. Si "wget" tourne, il ne fait rien. Si "wget" ne tourne pas, il execute une commande.
J'ai pensé à un
if [ps -ax | grep 'wget']
then
wget http://www.site.org/rep/01/fichier.txt
fi
Est ce que ca a une chance de marcher ? (je n'ai pas accès a mon Linux avant demain soir...)
Merci par avance
Guigeek
A voir également:
- Linux : Savoir si un process toure ou pas
- Linux reader - Télécharger - Stockage
- R-linux - Télécharger - Sauvegarde
- Toutou linux - Télécharger - Systèmes d'exploitation
- Backtrack linux - Télécharger - Sécurité
- Linux mint 22.1 - Accueil - Linux
7 réponses
Salut,
Non, aucune ;-(
En fait c'est pas la commande qu'il faut tester, mais le code retour de cette commande ($?).
De plus il existe une commande sous GNU/Linux qui combine la recherche "grep" d'un processus via la commande "ps", elle s'appelle "pgrep".
Non, aucune ;-(
En fait c'est pas la commande qu'il faut tester, mais le code retour de cette commande ($?).
De plus il existe une commande sous GNU/Linux qui combine la recherche "grep" d'un processus via la commande "ps", elle s'appelle "pgrep".
[tmpfs]$ pgrep firefox- 4120 [tmpfs]$ echo $? 0 [tmpfs]$ pgrep ftp [tmpfs]$ echo $? 1 [tmpfs]$Donc je suppose qu'un simple :
pgrep wget retval=$? if [ "$retval" = 1 ] then wget http://www.site.org/rep/01/fichier.txt fiSi la commande n'est pas présente sur ton système, remplace la par :
ps -e | grep wget;-))
Ca Marche.
T'est un dieu.
Je t'aime.
Bon, je m'emballe mais j'y ai passé trop de temps pour pas m'enflammer...
C'est comme ca qu'on apprends, mais quand même ...
Encore merci
T'est un dieu.
Je t'aime.
Bon, je m'emballe mais j'y ai passé trop de temps pour pas m'enflammer...
C'est comme ca qu'on apprends, mais quand même ...
Encore merci
je suis pas certain de la syntaxe, mais je ne voi pas pourquoi ça ne fonctionnerai pas.
Par contre, attention aux : *wget*
tu peux l'avoir dans windowget par exemple.
peut être un grep ' wget ' fonctionnerzai mieux
Par contre, attention aux : *wget*
tu peux l'avoir dans windowget par exemple.
peut être un grep ' wget ' fonctionnerzai mieux
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question