Maak kennis met het commando Linux: ps

Probeer Ons Instrument Voor Het Oplossen Van Problemen

Door de jaren heen zijn er bepaalde commando's geweest die me echt uit de problemen hebben geholpen. Een van die opdrachten is de ps opdracht. De ps betekent processtatus en het vertelt je, zoals je zou verwachten, de status van een proces. Dit is een snelle manier om te weten of een applicatie of opdracht op een Linux-systeem draait. Oh, je zou zeker een geweldige GUI kunnen starten voor hetzelfde doel, maar die GUI doet je niets als je aan een headless server-installatie werkt of op een externe machine werkt. In die gevallen is het ps commando is uw beste keuze om te helpen bij het beheren van processen.

U zult blij zijn te weten dat het ps commando zal zeker al op uw Linux-machine zijn geïnstalleerd, dus u hoeft zich geen zorgen te maken over de installatie.

Commandostructuur

De basisopdrachtstructuur voor ps is:

ps OPTIE

Natuurlijk biedt elk goed Linux-commando veel opties, en ps is geen uitzondering. Voor deze opdracht zullen we alleen de beste groep van opties samen schetsen in plaats van alleen alle (of de beste) opties op te sommen. Op deze manier kunt u direct naar het commando gaan dat u moet gebruiken.

Toon een lijst met processen die eigendom zijn van een specifieke gebruiker

Stel dat ik alle processen wil vermelden die eigendom zijn van de gebruiker jlwallen . Om dit te doen, zou ik een van de twee opdrachten kunnen invoeren:

ps ux

Hiermee worden alle processen weergegeven die eigendom zijn van de gebruiker die de opdracht geeft. De resultaten voor deze opdracht zien er als volgt uit:

GEBRUIKER PID% CPU% MEM VSZ RSS TTY STAT STARTTIJD OPDRACHT
jlwallen 560 0,0 0,3 18312 7376? SN 19:40 0:00 / etc / alternatief
jlwallen 561 0.0 0.1 7316 3932 pts / 0 SNs 19:40 0:00 bash
jlwallen 1137 0,0 0,0 1644416? S 19:47 0:00 slaap 8
jlwallen 1141 0,0 0,0 1644420? S 19:47 0:00 slaap 8
jlwallen 1142 0.0 0.0 4384 1012 ptn / 0 RN + 19:48 0:00 ps ux

U kunt ook een soortgelijke lijst krijgen met de opdracht:

ps U jlwallen

De resultaten van deze opdracht zijn:

PID TTY STAT TIJD OPDRACHT
560? SNs 0:00 / etc / alternative / x-terminal-emulator
561 pts / 0 SNs 0:00 bash
1223? S 0:00 slaap 8
1227? S 0:00 slaap 8
1228 pts/0    RN+    0:00 ps U jlwallen

Toon alle processen

Om elk proces op uw systeem te zien, voert u de volgende opdracht in:

ps naar

De resultaten van deze opdracht zouden vergelijkbaar zijn met die van ps ux alleen zou het het proces van elke gebruiker laten zien, evenals het systeem.

Maak een lijst van de details van een enkel proces

Hoe zit het wanneer u de details van slechts één proces wilt zien? Stel je voor dat je het commando geeft ps ux en alle lijsten moeten doorzoeken om informatie te vinden over het proces waarover u informatie probeert te verkrijgen. Stel dat u bijvoorbeeld de PID (proces-ID) van de momenteel draaiende daemon voor Dansguardian moet vinden. U kunt de ps commando en leid de resultaten naar het grip opdracht om in de lijst naar een specifieke tekenreeks te zoeken en alleen de overeenkomende tekenreeksen af ​​te drukken. Om dit te doen, geeft u de opdracht:

ps naar | grep dansguardian

die iets zal afdrukken als:

113 2596 0,0 0,5 17852 11460? Ss 06:49 0:00 / usr / sbin / dansguardian

Nu kun je zien dat de PID van Dansguardian 2596 is. Je kunt dit doden met de dood 2956 opdracht.

Laatste gedachten

Er zijn veel meer toepassingen voor de ps commando en nog veel meer manieren om de ps opdracht. De bovenstaande drie voorbeelden worden het meest gebruikt, maar denk niet dat u zich alleen tot die toepassingen beperkt. Geef het commando man ps en je ziet een volledige lijst van alle ps opties die voor u beschikbaar zijn.