GNU/Linux >> Tutoriels Linux >  >> Linux

Vérifier le processus si le même est en cours d'exécution ?

Existe-t-il un script ou un moyen sous Linux qui, lorsque j'essaie d'exécuter un script/processus shell, s'il est en cours d'exécution, il indiquera que le même est en cours d'exécution et se terminera sinon il continuera.

Réponse acceptée :

Vous pouvez utiliser cette doublure pour faire ce que vous voulez :

$ pgrep script.bash && echo "already running" || ( ./script.bash & )

Exemple

Supposons que j'ai ce script :

$ cat script.bash 
#!/bin/bash

echo "Hello World"
sleep 10

Si nous utilisons notre doublure :

$ pgrep script.bash && echo "already running" || ( ./script.bash & )
Hello World
$

Nous l'exécutons à nouveau :

$ pgrep script.bash && echo "already running" || ( ./script.bash & )
10197
already running
$

En attendant 10 secondes et en l'exécutant à nouveau, cela fonctionne à nouveau :

$ pgrep script.bash && echo "already running" || ( ./script.bash & )
Hello World
$

Linux
  1. Utilisation de Bash pour l'automatisation

  2. Comment afficher la sortie d'un processus en cours d'exécution dans une autre session Bash ?

  3. Vérifier la limite FD ouverte pour un processus donné sous Linux

  4. Vérifier l'espace disque libre pour la partition actuelle dans bash

  5. Comment vérifier si ssh-agent est déjà en cours d'exécution dans bash ?

Bash pour la boucle

Tutoriel de script Bash pour les débutants

Tutoriel Bash Heredoc pour les débutants

Processus en cours d'exécution

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

Script Linux pour vérifier si le processus est en cours d'exécution et agir sur le résultat