GNU/Linux >> Tutoriels Linux >  >> Linux

Vérifier qu'un script est en cours d'exécution ?

Cette question a déjà des réponses ici :Vérifiez si le processus exécute Mac OS X puis exécutez le code

(2 réponses)
Fermé il y a 4 ans.

J'ai un programme de travail test.sh à exécuter toutes les 5 minutes, et un autre travail test1.sh programmé pour s'exécuter à 12h30, @ 12h30, les deux travaux s'exécuteront et créeront une impasse. Je dois donc vérifier que le travail test.sh est en cours d'exécution pour celui que j'utilise :

ps -ef | grep test1.sh

mais cela semble toujours vrai car cela produit une ligne pour la même commande.

  # ps -ef | grep test1.sh
team 24896   607  0 11:55 pts/11   00:00:00 test1.sh
team 24925   523  0 11:55 pts/4    00:00:00 grep test1.sh

comment éviter d'imprimer grep test1.sh ?

Je suis très nouveau sur Unix.

Merci,
Anne

Réponse acceptée :

Vous pouvez simplement ignorer le grep un par un des éléments suivants :-

ps -ef | grep test1.sh | grep -v grep

sinon :-

ps -ef | grep "[t]est1.sh"

Le second a l'air de descendre et cela fait gagner beaucoup de temps.


Linux
  1. Empêcher un script bash de s'exécuter simultanément

  2. Exécution du script avec ". » Et avec « source » ?

  3. Script PHP - détecter s'il s'exécute sous Linux ou Windows ?

  4. Commande Linux pour vérifier si un script shell est en cours d'exécution ou non

  5. Obtenir le PID du processus dans Shell Script

Exécuter un fichier de script sur Ssh via Sudo ?

Entrée Crontab suspecte exécutant 'xribfa4' toutes les 15 minutes ?

Comment obtenir le Tty dans lequel Bash est en cours d'exécution ?

Comment vérifier la syntaxe d'un script Bash sans l'exécuter ?

Vérifier quelle version de PHP j'utilise sous Linux ?

Comment grep pour unicode � dans un script bash