Voir si un script bash est lancé
Résolu
B@|-|@N
Messages postés
386
Date d'inscription
Statut
Membre
Dernière intervention
-
B@|-|@N Messages postés 386 Date d'inscription Statut Membre Dernière intervention -
B@|-|@N Messages postés 386 Date d'inscription Statut Membre Dernière intervention -
Bonjour tout le monde.
J'espère que vous avez passé un bon week end.
Alors je voudrais savoir comment faire pour voir si mon script est lancé et comment identifier son pid.
En fait si je veux cela, c'est pour éviter que des gens mal intentionnés ne me le lance n fois, n tendant vers beaucoup.
Merci d'avance pour votre aide.
Bahan
J'espère que vous avez passé un bon week end.
Alors je voudrais savoir comment faire pour voir si mon script est lancé et comment identifier son pid.
En fait si je veux cela, c'est pour éviter que des gens mal intentionnés ne me le lance n fois, n tendant vers beaucoup.
Merci d'avance pour votre aide.
Bahan
A voir également:
- Lancer un script bash
- Script vidéo youtube - Guide
- Mas script - Accueil - Windows
- Ghost script - Télécharger - Polices de caractères
- Lancer une application au démarrage windows 10 - Guide
- Bingo bash free - Télécharger - Divers Jeux
5 réponses
Pour éviter que ton script ne soit lancé plusieurs fois, tu peux utiliser des verrous en créant un fichier (contenant le PID du shell qui s'exécute tant qu'à faire) dans /var/lock.
Tu rajoutes donc un truc dans le genre en début de ton script :
et en fin :
voilou
Nicolas
Tu rajoutes donc un truc dans le genre en début de ton script :
if [ -e "/var/lock/$(basename $0)" ] then echo "le script est déjà lancé, pas possible de le relancer" exit 1 fi echo $$ > /var/lock/$(basename $0)
et en fin :
rm /var/lock/$(basename $0)
voilou
Nicolas
Salut et oui j'ai passer un bon week end Pascal :p merci !
la commande :
te permet d'afficher les processus en cours (http://www.delafond.org/traducmanfr/man/man1/ps.1.html)
voilà !
la commande :
ps aux
te permet d'afficher les processus en cours (http://www.delafond.org/traducmanfr/man/man1/ps.1.html)
voilà !
Salut,
Oui et même que :
Oui et même que :
ps -ef | grep ton_scriptdevrait le faire ausi. Et si tu veux que le "PID" essaie ça :
pgrep ton_scriptLa preuve :
[jp@Mandrake jp]$ ps -ef | grep fich.sh jp 5315 3742 0 11:00 pts1 00:00:00 /bin/bash ./fich.sh jp 5388 5322 0 11:01 pts3 00:00:00 grep fich.sh [jp@Mandrake jp]$ pgrep fich.sh 5315 [jp@Mandrake jp]$;-))
Oui,
Fais bien attention à ce que le fichier de "lock" soit bien supprimé quelle que soit la manière dont ton script bash se termine (si tu as des "exit" qui traînent, gestion d'erreurs, etc., fais une fonction pour terminer ton script de façon clean et appele la systématiquement).
Dal
Fais bien attention à ce que le fichier de "lock" soit bien supprimé quelle que soit la manière dont ton script bash se termine (si tu as des "exit" qui traînent, gestion d'erreurs, etc., fais une fonction pour terminer ton script de façon clean et appele la systématiquement).
Dal
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question