Úvod
Příkaz ps vytvoří seznam aktuálně spuštěných procesů v počítači.
Tato příručka vám ukáže častější použití příkazu ps, abyste mohli co nejvíce využít.
Příkaz ps se běžně používá ve spojení s příkazem grep a více či méně příkazy.
Tyto další příkazy pomáhají filtrovat a paginovat výstup z ps, který může být často poměrně dlouhý.
Jak používat příkaz ps
Samotný příkaz ps zobrazuje spuštěné procesy uživatelem, který je spuštěn v okně terminálu.
Chcete-li vyvolat ps, jednoduše zadejte následující:
ps
Na výstupu se zobrazí řádky dat obsahující následující informace:
- PID
- TTY
- Čas
- Příkaz
PID je identifikátor procesu, který identifikuje probíhající proces. TTY je typ terminálu.
Samotný příkaz ps je poměrně omezen. Pravděpodobně chcete vidět všechny běžící procesy.
Chcete-li zobrazit všechny spuštěné procesy, použijte jeden z následujících příkazů:
ps -A
ps -e
Chcete-li zobrazit všechny procesy s výjimkou vedoucích sezení, spusťte následující příkaz:
ps -d
Takže co je vedoucí relace? Když jeden proces spouští jiné procesy, je vedoucím sezením všech ostatních procesů. Takže si představte proces A, který zahájí proces B a proces C. Proces B zahájí proces D a proces C zahájí proces E. Když vypisujete všechny procesy kromě vedoucích zasedání, uvidíte B, C, D a E, ale ne A.
Můžete zrušit libovolný výběr, který jste vybrali pomocí přepínače -N. Například pokud chcete vidět pouze vedoucí relací, spusťte následující příkaz:
ps -d -N
Je zřejmé, že -N není příliš citlivý při použití s přepínači -e nebo -A, protože to vůbec nevykazuje.
Chcete-li vidět pouze procesy přidružené k tomuto terminálu, spusťte následující příkaz:
ps T
Chcete-li zobrazit všechny spuštěné procesy, použijte následující příkaz:
ps r
Výběr specifických procesů pomocí příkazu ps
Pomocí příkazu ps můžete vrátit určité procesy a existují různé způsoby, jak změnit kritéria výběru.
Například pokud znáte ID procesu, můžete jednoduše použít následující příkaz:
ps -p
Můžete vybrat více procesů zadáním více identifikátorů procesů následovně:
ps -p "1234 9778"
Můžete je také zadat pomocí seznamu oddělených čárkami:
ps -p 1234,9778
Je pravděpodobné, že neznáte ID procesu a je jednodušší vyhledávat pomocí příkazu. Chcete-li to provést, použijte následující příkaz:
ps -C
Chcete-li například zjistit, zda je prohlížeč Chrome spuštěn, můžete použít následující příkaz:
ps -C chrom
Možná vás překvapí, že se vrátí jeden proces pro každou otevřenou kartu.
Další způsoby filtrování výsledků jsou podle skupin. Můžete vyhledat podle názvu skupiny pomocí následující syntaxe:
ps -G
ps --Skupina
Chcete-li například zjistit všechny procesy spuštěné skupinou účtů, zadejte následující:
ps -G "účty"
ps - skupina "účty"
Můžete také vyhledat název skupiny namísto názvu skupiny pomocí malých písmen g následujícím způsobem:
ps -g
ps - skupina
Chcete-li vyhledávat podle seznamu identifikátorů relací, použijte následující příkaz:
ps -s
Případně použijte následující pro vyhledání podle typu terminálu.
ps -t
Chcete-li najít všechny procesy spuštěné konkrétním uživatelem, vyzkoušejte následující příkaz:
ps U
Například pro nalezení všech procesů běžících gary spusťte následující:
ps U "gary"
Všimněte si, že toto zobrazuje osobu, jejíž pověření se používá k spuštění příkazu. Například pokud jsem přihlášen jako gary a spustím výše uvedený příkaz, zobrazí se všechny příkazy spuštěné mnou.
Pokud se přihlásím jako Tom a použiji sudo pro spuštění příkazu jako já, pak výše uvedený příkaz ukáže, že Tomův příkaz je spuštěn gary a ne tom.
Chcete-li omezit seznam pouze na procesy, které skutečně provozuje gary, použijte následující příkaz:
ps -U "gary"
Formátování příkazu ps Výstup
Ve výchozím nastavení se při použití příkazu ps dostane stejné 4 sloupce:
- PID
- TTY
- Čas
- Příkaz
Úplný výpis můžete získat spuštěním následujícího příkazu:
ps -ef
V -e, jak víte, ukazuje všechny procesy a f nebo -f zobrazuje úplné podrobnosti.
Vrácené sloupce jsou následující:
- uživatelské ID
- PID
- PPID
- C
- STEE
- TTY
- Čas
- Příkaz
ID uživatele je osoba, která příkaz spustila. PID je ID procesu příkazu příkazu. PPID je rodičovský proces, který spustil příkaz.
Ve sloupci C je zobrazen počet dětí, které má proces. STIM je čas začátku procesu. TTY je terminál, čas je čas potřebný ke spuštění a příkaz je spuštěný příkaz.
Další sloupce můžete získat pomocí následujícího příkazu:
ps -eF
Vrací následující sloupce:
- UID
- PID
- PPID
- C
- SZ
- RSS
- PSR
- STEE
- TTY
- Čas
- Příkaz
Další sloupce jsou SZ, RSS a PSR. SZ je velikost procesu, RSS je skutečná velikost paměti a PSR je procesorem, kterým je příkaz přiřazen.
Můžete zadat uživatelsky definovaný formát pomocí následujícího přepínače:
ps -e -format
Dostupné formáty jsou následující:
- % cpu - cpu využití
- % mem - procento využití paměti
- args - Příkaz se všemi jeho argumenty
- c - využití procesoru
- cmd - příkaz
- comm - Pouze název příkazu
- CP - Použití CPU
- cputime - CPU čas
- egid - Efektivní id skupiny
- egroup - efektivní skupina
- etime - Uplynulý čas
- euid - Efektivní id uživatele
- euser - Efektivní uživatel
- gid - ID skupiny
- skupina - název skupiny
- pgid - ID skupiny procesů
- pgrp - skupina procesů
- ppid - identifikátor rodičovského procesu
- start - Čas začal proces
- sz - Velikost ve fyzických stránkách
- thcount - vlákna vlastněná procesem
- čas - kumulativní čas
- uid - ID uživatele
- uname - uživatelské jméno
Existuje mnoho dalších možností, ale ty jsou nejčastěji používané.
Chcete-li použít formáty, zadejte následující:
ps -e --format = "uid uname cmd time"
Položky můžete míchat a přizpůsobovat tak, jak si přejete.
Třídění výstupu
Chcete-li třídit výstup, použijte následující poznámku:
ps -ef --sort
Výběr možností řazení je následující:
- cmd - Název spustitelného souboru
- pcpu - využití procesoru
- vlajky - vlajky
- pgrp - ID skupiny procesů
- Cutime - Kumulativní uživatelský čas
- cstime - kumulativní systémový čas
- utime - Uživatelský čas
- pid - ID procesu
- ppid - identifikátor rodičovského procesu
- velikost - velikost
- uid - uživatelské jméno
- uživatel - uživatelské jméno
Opět existují další možnosti, ale ty jsou nejčastější.
Příklad příkazu řazení je následující:
ps -ef -sort uživatele, pid
Použití ps s grep, méně a více příkazů
Jak bylo uvedeno na začátku, je běžné používat ps s grep, méně a více příkazů.
Čím méně a více příkazů vám pomůže projít výsledky po jedné stránce najednou. Chcete-li použít tyto příkazy, jednoduše potrubí výstup z grep do nich následovně:
ps -ef | více
ps -ef | méně
Příkaz grep vám pomůže filtrovat výsledky z příkazu ps.
Například:
ps -ef | grep chrome
souhrn
Příkaz ps se běžně používá pro výpis procesů v rámci systému Linux. Můžete také použít horní příkaz k zobrazení běžících procesů jiným způsobem.
Tento článek pokrývá běžné přepínače, ale je k dispozici více a více možností formátování a řazení.
Chcete-li se dozvědět více, podívejte se na stránky mana Linuxu pro příkaz ps.