Príklady použitia príkazu Linux ps

úvod

Príkaz ps vytvára zoznam bežiacich procesov vo vašom počítači.

Táto príručka vám ukáže viac bežných použití príkazu ps, aby ste mohli čo najviac využiť.

Príkaz ps sa bežne používa v spojení s príkazom grep a viac alebo menej príkazov.

Tieto ďalšie príkazy pomáhajú filtrovať a paginovať výstup z ps, ktorý môže byť často dosť dlhý.

Ako používať príkaz ps

Samotný príkaz ps zobrazuje spustené procesy používateľom, ktorý ho spúšťa v okne terminálu.

Na vyvolanie ps jednoducho zadajte nasledujúce:

ps

Na výstupe sa zobrazia riadky údajov obsahujúcich nasledujúce informácie:

PID je identifikátor procesu, ktorý identifikuje bežiaci proces. TTY je typ terminálu.

Samotný príkaz ps je pomerne obmedzený. Pravdepodobne budete chcieť vidieť všetky spustené procesy.

Ak chcete zobraziť všetky spustené procesy, použite jeden z nasledujúcich príkazov:

ps -A

ps -e

Ak chcete zobraziť všetky procesy okrem vedúcich relácií, spustite nasledujúci príkaz:

ps -d

Takže čo je vodca relácie? Keď jeden proces odštartuje iné procesy, je vedúcim relácie všetkých ostatných procesov. Takže si predstavte, že proces A odštartuje proces B a proces C. Proces B začína proces D a proces C začína proces E. Keď uvádzate zoznam všetkých procesov okrem vedúcich relácií, uvidíte B, C, D a E, ale nie A.

Môžete zrušiť ľubovoľný výber, ktorý ste vybrali pomocou prepínača -N. Napríklad, ak chcete vidieť len vodcov relácie spustiť nasledujúci príkaz:

ps -d-N

Samozrejme, že -N nie je veľmi rozumné, ak sa používa s prepínačmi -e alebo -A, pretože to nebude vôbec ukazovať.

Ak chcete vidieť iba procesy priradené k tomuto terminálu, spustite nasledujúci príkaz:

ps T

Ak chcete vidieť všetky spustené procesy pomocou nasledujúceho príkazu:

ps r

Výber špecifických procesov pomocou príkazu ps

Môžete vrátiť špecifické procesy pomocou príkazu ps a existujú rôzne spôsoby, ako zmeniť kritériá výberu.

Napríklad ak poznáte id procesu, môžete jednoducho použiť nasledujúci príkaz:

ps -p

Viaceré procesy môžete vybrať zadaním viacerých ID procesov nasledovne:

ps -p "1234 9778"

Môžete ich tiež zadať pomocou zoznamu oddelených čiarkou:

ps -p 1234,9778

Je pravdepodobné, že neznáte ID procesu a je ľahšie vyhľadávať pomocou príkazu. Použite nasledujúci príkaz:

ps -c

Ak chcete napríklad zistiť, či je prehliadač Chrome spustený, môžete použiť nasledujúci príkaz:

ps -C chróm

Možno vás prekvapí, že vráti jeden proces pre každú otvorenú kartu.

Ďalšie spôsoby filtrovania výsledkov sú podľa skupín. Môžete vyhľadávať podľa názvu skupiny pomocou nasledujúcej syntaxe:

ps -G
ps - skupina

Ak napríklad chcete zistiť všetky procesy bežiace v účtovnej skupine, zadajte nasledovné:

ps -G "účty"
ps - Skupiny "účtov"

Môžete tiež vyhľadávať podľa názvu skupiny namiesto názvu skupiny pomocou malých písmen g nasledovne:

ps -g
ps - skupina

Ak chcete vyhľadávať podľa zoznamu ID relácií, použite nasledujúci príkaz:

ps -s

Alternatívne použite nasledujúce vyhľadávanie podľa typu terminálu.

ps -t

Ak chcete nájsť všetky procesy spustené konkrétnym používateľom, vyskúšajte nasledujúci príkaz:

ps U

Napríklad nájsť všetky procesy bežiace gary spustiť nasledovné:

ps U "gary"

Všimnite si, že toto zobrazuje osobu, ktorej poverenia sa používajú na spustenie príkazu. Napríklad, ak som prihlásený ako gary a spustím vyššie uvedený príkaz, zobrazí sa všetok príkaz, ktorý som spravil.

Ak sa prihlásim ako Tom a použijem sudo na spustenie príkazu ako ja, potom vyššie uvedený príkaz ukáže Tomov príkaz ako riadený gary a nie tom.

Ak chcete obmedziť zoznam len na procesy, ktoré skutočne beží gary, použite nasledujúci príkaz:

ps -U "gary"

Formátovanie príkazu ps Výstup

Štandardne dostanete rovnaké 4 stĺpce pri použití príkazu ps:

Úplný záznam môžete získať spustením nasledujúceho príkazu:

ps -ef

Hodnota -e, ako viete, ukazuje všetky procesy a f alebo -f zobrazuje všetky podrobnosti.

Vrátené stĺpce sú nasledovné:

ID používateľa je osoba, ktorá spustila príkaz. PID je ID procesu príkazu príkazu. PPID je rodičovský proces, ktorý spustil príkaz.

Stĺpec C zobrazuje počet detí, ktoré má proces. Štandard je čas začiatku procesu. TTY je terminál, čas je čas potrebný na spustenie a príkaz je spustený príkaz.

Môžete získať ešte viac stĺpcov pomocou nasledujúceho príkazu:

ps -eF

Vráti sa nasledujúce stĺpce:

Ďalšie stĺpce sú SZ, RSS a PSR. SZ je veľkosť procesu, RSS je skutočná veľkosť pamäte a PSR je procesor, ktorému je priradený príkaz.

Môžete určiť užívateľom definovaný formát pomocou nasledujúceho prepínača:

ps -e - formát

Dostupné formáty sú nasledujúce:

Existuje mnoho ďalších možností, ale tieto sú najčastejšie používané.

Ak chcete použiť formáty, zadajte nasledovné:

ps -e -format = "čas uid uname cmd"

Môžete mixovať a prispôsobiť položky tak, ako chcete.

Triedenie výstupu

Ak chcete triediť výstup, použite nasledujúci záznam:

ps -ef --sort

Voľba možností triedenia je nasledovná:

Opäť existujú viaceré možnosti, ale tie sú najbežnejšie.

Príklad príkazového zoraďovania je nasledovný:

ps -ef --sort užívateľ, pid

Použitie ps Pomocou grep, menej a viac príkazov

Ako bolo spomenuté na začiatku, je bežné používať ps s grep, menej a viac príkazov.

Čím menej a viac príkazov vám pomôže prehodiť výsledky po jednej stránke naraz. Ak chcete použiť tieto príkazy, jednoducho potrubia výstup z grep do nich nasledovne:

ps -ef | viac
ps -ef | menej

Príkaz grep vám pomôže filtrovať výsledky z príkazu ps.

Napríklad:

ps -ef | grep chrome

zhrnutie

Príkaz ps sa bežne používa na výpis procesov v systéme Linux. Môžete tiež použiť príkaz top na zobrazenie bežiacich procesov iným spôsobom.

Tento článok sa vzťahuje na bežné prepínače, ale existuje viac dostupných a viac možností formátovania a triedenia.

Ak chcete zistiť viac, prečítajte si manuálové stránky Linuxu pre príkaz ps.