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.