Různé typy možností:
Příkaz ps přijímá různé možnosti.
- Možnosti UNIX - mají úvodní pomlčku. $ ps -e
- Možnosti BSD - nemají úvodní pomlčku. $ ps aux
- Možnosti GNU - mají dvojitou úvodní pomlčku. $ ps --pid 1001
V tomto příkladu použiji možnosti UNIX a občas GNU. Možnosti BSD jsou však podobné. Většinu času je můžete bez problémů smíchat. Některé možnosti však nemůžete kombinovat, protože to nebude fungovat. Buď opatrný.
Nalezení všech spuštěných procesů:
Pomocí příkazu ps můžete najít všechny běžící procesy na vašem počítači.
Chcete-li najít všechny běžící procesy s ps, použijte ps následujícím způsobem,
$ ps -efJak vidíte, UID (ID uživatele), PID (ID procesu), PPID (ID nadřazeného procesu), CMD (příkaz použitý ke spuštění procesu) a některé další informace o všech spuštěných procesech.
Můžete zobrazit všechny spuštěné procesy s různými ps kombinace možností. Budou zobrazovat různé informace o běžících procesech. Můžete to vlastně říct ps zobrazit konkrétní informace, ke kterým se dostaneme v další části.
$ ps -eJak můžete vidět, ps -e ukazuje PID, TTY (číslo terminálu), ČAS (doba běhu procesu) a CMD běžících procesů. To je mnohem méně informací než dříve.
$ ps -ef
Zobrazuje spoustu informací o spuštěných procesech, ale některé ze sloupců jako např C (využití procesoru), SZ (velikost na fyzických stránkách), RSS (velikost rezidentní sady), PSR (procesor, kterému je tento proces aktuálně přiřazen), STIME (čas, kdy proces začal) atd. nejsou zobrazeny. Je tedy o něco kompaktnější než ps -eF.
Další varianta ps,
$ ps -elyTento vám ukazuje UID (uživatelské ID), PRI (aktuální priorita procesu), NI (pěkná hodnota) také. Takže je to opravdu užitečné.
Usnadnění navigace ps:
Typický systém Linux má spoustu procesů běžících na pozadí. Takže výstup ps příkaz je velmi dlouhý. Je tam těžší najít užitečné informace. Můžeme ale použít pager jako např méně hledat procesy o něco jednodušší.
Můžete použít méně pager takto:
$ ps -ef | méně
Výstup z ps bude otevřen s méně.
Nyní můžete použít
Zde můžete také vyhledat konkrétní klíčová slova. To je opravdu užitečné při hledání procesů, které hledáte.
Řekněme, že chcete hledat procesy acpi, zadejte klíčové slovo následovně do méně pager.
/ acpiNyní stiskněte
Jak vidíte, proces s klíčovým slovem acpi je zvýrazněno.
Můžete také stisknout n a p kláves pro přechod na další a předchozí zápas (pokud je k dispozici).
Jak vidíte, stiskl jsem n a další proces s klíčovým slovem acpi je zvýrazněno.
Chcete-li opustit stránku, stiskněte q.
Ruční výběr sloupců k zobrazení v ps:
The ps -e / ps -ef / ps -eF Příkaz etc zobrazuje některé výchozí sloupce. Ale pokud chcete, můžete psovi říct, aby vám ukázal konkrétní sloupce, nebo přidat další sloupce do výchozí sady sloupců.
Řekněme například, že chcete pouze vidět % MEM (procento využití paměti), PID (ID procesu) a UID (ID vlastníka procesu) a PŘÍKAZ (příkaz procesu), poté spusťte ps takto:
$ ps -e -o% mem, pid, uid, komunikaceJak vidíte, ps zobrazil pouze informace, o které jsem je požádal. Nic víc nic míň.
Zde použité klíčové sloupce sloupce jsou% mem (pro% MEM), pid (pro PID), uid (pro UID), comm (pro COMMAND). ps podporuje mnoho klíčových slov. Celý seznam najdete na manuálové stránce ps.
Stačí otevřít manuálovou stránku ps pomocí následujícího příkazu a přejít na STANDARDNÍ SPECIFIKÁTORY FORMÁTU sekce, jak je znázorněno na následujícím obrázku.
$ muž ps
Pokud chcete zobrazit další sloupce spolu s výchozí sadou sloupců, můžete použít -Ó možnost zadat sloupce, které chcete zobrazit.
Například,
$ ps -ef -O% CPUJak vidíte, dodal jsem %PROCESOR a % MEM sloupec spolu s výchozími sloupci ps -ef příkaz.
Třídící výstup příkazu ps:
Můžete také seřadit výstup ps podle libovolného konkrétního sloupce nebo sloupců. Můžete psát výstup ps ve vzestupném nebo sestupném pořadí v závislosti na vašem požadavku.
Chcete-li seřadit výstup ps pomocí libovolného jednoho sloupce, můžete použít ps takto:
$ ps -ef --sort = (+ | -) column_codeNějaký příklad to objasní.
Řekněme, že chcete procesy seřadit podle toho, jak dlouho proces běží vzestupně. Ps můžete spustit následujícím způsobem:
$ ps -ef --sort = + časNebo
$ ps -ef --sort = časPOZNÁMKA: Výchozí nastavení je řazení vzestupně. Takže můžete vynechat + podepište, pokud chcete.
Jak vidíte, výstup je seřazen vzestupně podle ČAS sloupec.
Řekněme, že chcete procesy seřadit podle toho, jak dlouho proces běží v sestupném pořadí. Pak by příkaz ps byl:
$ ps -ef --sort = -timeJak vidíte, procesy, které běží nejdéle, jsou uvedeny jako první.
Pokud chcete řadit podle více sloupců, přidejte sloupce následujícím způsobem:
$ ps -ef --sort = čas, -% mem,% cpuKam dál??
Pokryl jsem základy příkazu ps. Nyní byste měli být schopni se dozvědět více o příkazu ps ze stránky manuálu ps.
Manuální stránku ps můžete otevřít následovně,
$ muž psNapříklad můžete najít konkrétní proces, pokud víte, že je to PID pomocí ps takto:
$ ps -O% mem,% cpu -p 2060POZNÁMKA: Tady, 2060 je PID procesu.
Můžete také vyhledat procesy vlastněné konkrétním uživatelem nebo skupinou atd.
Chcete-li například najít všechny spuštěné procesy přihlašovacího uživatele, spusťte ps takto:
$ ps -O uživatel,% mem,% cpu -U $ (whoami)POZNÁMKA: Můžete nahradit $ (whoami) jakýmkoli uživatelským jménem, které chcete vypsat na seznam procesů spuštěných jako daný uživatel.
Takto použijete příkaz ps k vyhledání běžících procesů v systému Linux. Děkujeme za přečtení tohoto článku.