Pavyzdys naudoja Linux ps komandą

Įvadas

"Ps" komanda pateikia šiuo metu veikiančių procesų jūsų kompiuteryje sąrašą.

Šis vadovas parodys dažniau naudojamas "ps" komandas, kad galėtumėte kuo geriau išnaudoti.

"Ps" komanda dažniausiai naudojama kartu su grep komanda ir daugiau ar mažiau komandų.

Šios papildomos komandos padeda filtruoti ir redaguoti ps išvestį, kuris dažnai gali būti gana ilgas.

Kaip naudotis ps komanda

Savo ruožtu komanda ps parodo, kaip vykdo procesą paleidę procesoriai per terminalo langą.

Norėdami pakviesti ps tiesiog įveskite:

Ps

Rezultatas rodys duomenų eilutes, kuriose yra ši informacija:

PID yra proceso ID, kuris identifikuoja vykdomą procesą. TTY yra terminalo tipas.

Pačios ps komandos komanda yra gana ribota. Jūs tikriausiai norite pamatyti visus veikiančius procesus.

Norėdami peržiūrėti visus vykdomus procesus, naudokite vieną iš šių komandų:

ps -A

ps-e

Norėdami parodyti visus procesus, išskyrus seansų lyderius, paleiskite šią komandą:

ps -d

Taigi, kas yra sesijos lyderis? Kai vienas procesas prasideda nuo kitų procesų, tai yra visų kitų procesų seansų lyderis. Taigi įsivaizduokite, kad procesas A pradeda procesą B ir procesą C. Procesas B pradeda procesą D ir procesas C prasideda nuo proceso E. Kai jūs įtraukiate visus procesus, išskyrus sesijų vadovus, pamatysite B, C, D ir E, bet ne A.

Galite atmesti pasirinkimus, kuriuos pasirinkote naudodami -N jungiklį. Pavyzdžiui, jei norite matyti tik sesijos vadovus, paleiskite šią komandą:

ps -d -N

Akivaizdu, kad -N nėra labai protingas, kai naudojamas su-e ar -A jungikliu, nes jis nieko nebus rodomas.

Jei norite matyti tik procesus, susijusius su šiuo terminalu, paleiskite šią komandą:

ps t

Jei norite pamatyti visus veikiančius procesus naudodami šią komandą:

ps r

Konkrečių procesų pasirinkimas naudojant "ps" komandą

Galite grąžinti konkrečius procesus naudodami ps komandą ir yra įvairių būdų pakeisti pasirinkimo kriterijus.

Pavyzdžiui, jei žinote proceso ID, galite tiesiog naudoti šią komandą:

ps-p

Galite pasirinkti kelis procesus, nurodydami kelias proceso ID taip:

ps-p "1234 9778"

Taip pat galite juos nurodyti nurodydami kableliais atskirtą sąrašą:

ps-p 1234,9778

Tikėtina, kad jūs nežinote proceso ID ir lengviau ieškoti pagal komandą. Norėdami tai padaryti, naudokite šią komandą:

ps -C

Pavyzdžiui, norėdami sužinoti, ar veikia "Chrome", galite naudoti šią komandą:

ps-chromas

Galbūt nustebsite, kad tai grąžina vieną kiekvieno atidaryto skirtuko procesą.

Kiti būdai, kaip filtruoti rezultatus, yra pagal grupes. Galite ieškoti pagal grupės pavadinimą, naudodami tokį sintaksę:

ps -G
ps --Grupė

Pavyzdžiui, norėdami sužinoti visus procesus, kuriuos vykdo sąskaitų grupės tipas, atlikite šiuos veiksmus:

ps -G "sąskaitos"
ps --Grupės "sąskaitos"

Be to, galite ieškoti pagal grupės ID, o ne grupės pavadinimą, naudodami mažąją raidę g taip:

ps -g
ps - grupė

Jei norite ieškoti pagal seansų ID sąrašą, naudokite šią komandą:

ps -s

Taip pat galite ieškoti pagal terminalo tipą.

ps-t

Jei norite rasti visus procesus, kuriuos vykdo konkretus naudotojas, išbandykite šią komandą:

ps U

Pavyzdžiui, jei norite rasti visus procesus, kuriuos paleidžia Gary, atlikite šiuos veiksmus:

ps U "gary"

Atminkite, kad tai rodo asmenį, kurio įgaliojimai naudojami komandai paleisti. Pavyzdžiui, jei aš esu prisijungęs kaip gary ir paleiskite aukščiau esančią komandą, ji parodys visą mano paleista komandą.

Jei aš prisijungsiu kaip Tomas ir naudosiu sudo, kad galėčiau paleisti komandą kaip mane, tada pirmiau nurodyta komanda parodys Tomo komandą kaip paleisti Gary, o ne tom.

Norėdami apriboti sąrašą tik procesams, kuriuos tikrai naudoja Gary, naudokite šią komandą:

ps -U "gary"

Formatavimas ps komandos išvesties

Pagal numatytuosius nustatymus jūs gaunate tuos pačius 4 stulpelius, kai naudojate komandą ps:

Galite gauti visą sąrašą, paleisdami šią komandą:

ps-ef

"-e", kaip žinote, rodo visus procesus, o f arba -f parodo išsamią informaciją.

Grąžinami stulpeliai yra tokie:

User ID yra asmuo, kuris paleido komandą. PID yra komanda komandos proceso ID. PPID yra tėvų procesas, kuris pradėjo komandą.

C stulpelyje parodyta, kiek vaikų turi procesą. "STime" yra proceso pradžia. TTY yra terminalas, laikas - laikas, per kurį buvo paleisti, o komanda - paleisti komanda.

Galite gauti dar daugiau stulpelių naudodami šią komandą:

ps -eF

Tai grąžina šiuos stulpelius:

Papildomos stulpeliai yra SZ, RSS ir PSR. SZ yra proceso dydis, RSS yra tikras atminties dydis, o PSR yra procesorius, kuriam priskirta komanda.

Galite nurodyti naudotojo nustatytą formatą naudodami šį jungiklį:

ps -e --format

Galimi tokie formatai:

Yra daug daugiau galimybių, tačiau tai dažniausiai naudojami.

Jei norite naudoti formatus, atlikite šiuos veiksmus:

ps -e --format = "uid uname cmd time"

Jūs galite sumaišyti ir suderinti daiktus taip, kaip norite.

Rūšiavimo rezultatas

Norėdami sugrupuoti išvestį, naudokite šį žymėjimą:

ps -ef --sort

Rūšiavimo parinkčių pasirinkimas yra toks:

Vėlgi yra daugiau galimybių, tačiau tai yra labiausiai paplitusios.

Pavyzdžiui, komandų eilė yra tokia:

ps -ef --sort user, pid

Naudojimas ps Naudojant grep, vis mažiau ir daugiau komandų

Kaip minėta iš pradžių, dažniausiai naudojamas ps su grep, vis mažiau ir daugiau komandų.

Kuo daugiau ir daugiau komandų padės peraugti rezultatus iš vieno puslapio vienu metu. Norėdami pasinaudoti šiomis komandomis, tiesiog išimkite iš grep išvesties taip:

ps -ef | daugiau
ps -ef | mažiau

"Grep" komanda padeda filtruoti rezultatus iš komandos ps.

Pavyzdžiui:

ps -ef | grep chrome

Santrauka

"Ps" komanda dažniausiai naudojama procesų sąrašui Linux sistemoje. Taip pat galite naudoti aukščiausią komandą, kad ekrane būtų rodomi procesai skirtingais būdais.

Šiame straipsnyje aptariami bendri jungikliai, tačiau yra daugiau turimų ir daugiau formatavimo ir rūšiavimo parinkčių.

Norėdami sužinoti daugiau, perskaitykite "ps" komandos Linux meno puslapius.