[Bash] Le processus existe ?

jalfr Messages postés 17 Statut Membre -  
jalfr Messages postés 17 Statut Membre -
Salut à tous !

J'aimerais faire un script BASH qui me permettrais de vérifier que un screen est bien lancé dans les process de ma machine et le cas échéant, lancé une commande pour lancé ce screen.

Comme j'm'y connais pas du tout en BASH, est-ce que quelqu'un peut m'aider ?


Merci,
Julien.

1 réponse

jipicy Messages postés 41342 Statut Modérateur 4 896
 
Salut,
#!/bin/bash

pgrep '\bscreen' >/dev/null
if [ "$?" = "0" ]
then
echo -e "Au moins un processus de \"screen\" est déjà lancé."
else
echo -e "Lancement d'un \"screen\"..."
sleep 2
screen
fi
;-))
1
jalfr Messages postés 17 Statut Membre 1
 
Salut !

Merci de ta réponse :)
Mon est souci est que ça marche... mais pas comme je le voudrais ! Le screen est lancé et est visible dans les processus (normal) et pourtant le script le relance... (screen -dmS public)

Voilà comment je l'ai modifié pour mon usage:

#!/bin/bash

pgrep '\bscreen -dmS public' >/dev/null
if [ "$?" = "0" ]
then
echo -e "Le serveur cs publique est lancé !"
else
echo -e "Lancement en cours du serveur cs publique"
sleep 2
screen -dmS public ./hlds_run -game cstrike +maxplayers 18 +map de_dust2 +port 27015 -pingboost 2 +sys_ticrate 500
fi


Merci d'avance !
Julien.
0