result=`ps -Al | grep command-name | wc -l`
echo $result
Sui sistemi che hanno pgrep
disponibile, il -c
L'opzione restituisce un conteggio del numero di processi che corrispondono al nome dato
pgrep -c command_name
Nota che questo è un grep
corrispondenza in stile, non una corrispondenza esatta, quindi ad es. pgrep sh
corrisponderà anche a bash
processi. Se vuoi una corrispondenza esatta, usa anche -x
opzione.
Se pgrep
non è disponibile, puoi usare ps
e wc
.
ps -C command_name --no-headers | wc -l
Il -C
opzione a ps
prende command_name
come argomento e il programma stampa una tabella di informazioni sui processi il cui nome eseguibile corrisponde al nome del comando specificato. Questa è una corrispondenza esatta, non grep
-stile. Il --no-headers
L'opzione sopprime le intestazioni della tabella, che normalmente vengono stampate come prima riga. Con --no-headers
, ottieni una riga per processo corrispondente. Poi wc -l
conta e stampa il numero di righe nel suo input.