Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 21/01/2016, à 19:10

livendirect

création d'un script avec une condition

bonsoir, je m'explique, afin de rendre possible un projet de sauvegarde, il me faudrait ajouter un bout de code dans lequel la condition est la suivante:
j'ai un process qui tourne en continue et il me faudrait créer une boucle dans laquelle la condition est qu'il faut attendre que le process s'arrete avant de continuer.
j'ai fait un test qui boucle et ne passe pas a l'étape suivante :

while  true
do
        AA=`ps -ef|grep 'nom du process'|wc -l`
        if [ $AA -eq 0 ]
        then
                echo "process arreté "
                break
        else
                echo "process en cours"
        fi
done

j'ai bien le "process en cours" en continue dans le terminal mais dès lors que je stop le process la boucle ne m'affiche pas "process arreté "
un peu d'aide de votre part ne serait pas de refus
Bien cordialement

Dernière modification par livendirect (Le 21/01/2016, à 19:11)


Newbie mais je progresse grâce a vous ^^

Hors ligne

#2 Le 21/01/2016, à 19:18

pingouinux

Re : création d'un script avec une condition

Bonjour,
C'est parce que tu récupères aussi la commande grep qui mentionne le nom du process.
Tu peux regarder aussi la commande

pgrep 'nom du process'

Hors ligne

#3 Le 21/01/2016, à 19:20

carreti

Re : création d'un script avec une condition

Hello,

Ta variable AA n'est jamais 0

ps -ef|grep 'nom du process'

renvoie au minimum la ligne du grep, donc wc -l = 1

si tu veux garder le même test fait [ $AA -eq 1 ] ...


Utilisateur et administrateur de Linux et d'Unix (depuis le siècle dernier) et plus précisément ces dernières années de  Linux Gentoo et de Windows 10 ...
Je cherche du boulot sur Paris et RP Ouest en administration système ou mieux dans la tierce maintenance applicative, middleware, base de données, flux ...

Hors ligne

#4 Le 21/01/2016, à 20:45

livendirect

Re : création d'un script avec une condition

Bonsoir ,
@pingouinux :je vais tester ça avec la commande pgrep
@carreti : je vais essayer avec [ $AA -eq 1 ]

merci de votre aide, je posterai le résultat a la suite ^^


Newbie mais je progresse grâce a vous ^^

Hors ligne

#5 Le 21/01/2016, à 21:16

k3c

Re : création d'un script avec une condition

pgrep te renvoie le(s) pid(s) du/des process trouvé's), ça peut te simplifier la procédure, exemple

$ ps -ef | grep firefox
gg       26861  2555  5 17:45 ?        00:07:43 /usr/lib/firefox/firefox http://iptraf.seul.org/
gg       27529 21745  0 20:15 pts/28   00:00:00 grep firefox
$ pgrep firefox
26861
$ 

Dernière modification par k3c (Le 21/01/2016, à 21:34)


Archlinux sur Xiaomi Air 13

Hors ligne

#6 Le 21/01/2016, à 21:16

pingouinux

Re : création d'un script avec une condition

Avec pgrep, tu peux faire ceci par exemple, en faisant un test toutes les 10 secondes :

while  true
do
        if pgrep 'nom du process' >/dev/null
        then
                echo "process en cours"
        else
                echo "process arreté "
                break
        fi
        sleep 10
done

Dernière modification par pingouinux (Le 21/01/2016, à 21:18)

Hors ligne

#7 Le 22/01/2016, à 10:20

livendirect

Re : création d'un script avec une condition

bonjour a tous,
merci de vos réponses, en effet votre aide m'a été fructueuse car le script adapté au process que je cherche fonctionne.
je vous en suis reconnaissant.
bien cordialement, L&D


Newbie mais je progresse grâce a vous ^^

Hors ligne