result=`ps -Al | grep command-name | wc -l`
echo $result
Na systémech, které mají pgrep
k dispozici, -c
volba vrací počet procesů, které odpovídají danému názvu
pgrep -c command_name
Všimněte si, že toto je grep
-shoda stylu, ne přesná shoda, takže kupř. pgrep sh
bude také odpovídat bash
procesy. Pokud chcete přesnou shodu, použijte také -x
možnost.
Pokud pgrep
není k dispozici, můžete použít ps
a wc
.
ps -C command_name --no-headers | wc -l
-C
možnost na ps
trvá command_name
jako argument a program vypíše tabulku informací o procesech, jejichž název spustitelného souboru se shoduje s názvem daného příkazu. Toto je přesná shoda, nikoli grep
-styl. --no-headers
volba potlačí záhlaví tabulky, která se normálně tisknou jako první řádek. S --no-headers
, získáte jeden řádek na odpovídající proces. Potom wc -l
spočítá a vypíše počet řádků na svém vstupu.