GNU/Linux >> Linux Esercitazione >  >> Linux

Verifica che uno script sia in esecuzione?

Questa domanda ha già risposte qui :controlla se il processo esegue Mac OS X, quindi esegui il codice

(2 risposte)
Chiuso 4 anni fa.

Ho un programma di lavoro test.sh da eseguire ogni 5 minuti e un altro lavoro test1.sh programmato per l'esecuzione alle 12:30, @ 12:30 entrambi i lavori verranno eseguiti e stanno creando un deadlock. Quindi ho bisogno di controllare il lavoro test.sh è in esecuzione per quello che sto usando:

ps -ef | grep test1.sh

ma questo sembra essere sempre vero in quanto produce una riga per lo stesso comando.

  # 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

come evitare di stampare grep test1.sh ?

Sono molto nuovo in Unix.

Grazie,
Anna

Risposta accettata:

Puoi semplicemente ignorare grep uno per uno dei seguenti:-

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

altro:-

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

Il secondo guarda la discesa e fa risparmiare molto tempo.


Linux
  1. Script PHP:rileva se è in esecuzione su Linux o Windows?

  2. Comando Linux per verificare se uno script di shell è in esecuzione o meno

  3. Ottenere il PID del processo in Shell Script

  4. Esecuzione di uno script Python da PHP

  5. Esecuzione di Pycharm come root dal programma di avvio

Impedire l'esecuzione simultanea di uno script bash

Il modo "corretto" per verificare se un servizio è in esecuzione in uno script?

Eseguire un file di script su Ssh tramite Sudo?

Come posso controllare la sintassi di uno script Bash senza eseguirlo?

Esecuzione di script di shell in parallelo

esecuzione di script php (funzione php) in linux bash