Android

Ps εντολή στο linux (διεργασίες λίστας)

Statistical Programming with R by Connor Harris

Statistical Programming with R by Connor Harris

Πίνακας περιεχομένων:

Anonim

Στο Linux, ένα τρέχον παράδειγμα ενός προγράμματος ονομάζεται διαδικασία. Περιστασιακά, όταν εργάζεστε σε μια μηχανή Linux, ίσως χρειαστεί να μάθετε ποιες διαδικασίες εκτελούνται αυτήν τη στιγμή.

Υπάρχουν πολλές εντολές που μπορείτε να χρησιμοποιήσετε για να βρείτε πληροφορίες σχετικά με τις τρέχουσες διαδικασίες, με τα ps , pstree και top να είναι τα πιο συχνά χρησιμοποιούμενα.

Αυτό το άρθρο εξηγεί πώς να χρησιμοποιήσετε την εντολή ps για να απαριθμήσετε τις τρέχουσες διεργασίες και να εμφανίσετε πληροφορίες σχετικά με αυτές τις διαδικασίες.

Πώς να χρησιμοποιήσετε την εντολή ps

Η γενική σύνταξη για την εντολή ps είναι η εξής:

ps

Για ιστορικούς λόγους και λόγους συμβατότητας, η εντολή ps δέχεται διάφορους τύπους επιλογών:

  • Επιλογές στυλ UNIX, που προηγούνται από μια ενιαία επιλογή στυλ dash.BSD, που χρησιμοποιείται χωρίς dash.GNU μακρές επιλογές, που προηγούνται δύο παύλες.

Διαφορετικοί τύποι επιλογών μπορούν να αναμειχθούν, αλλά σε ορισμένες συγκεκριμένες περιπτώσεις μπορεί να εμφανιστούν συγκρούσεις, οπότε είναι καλύτερο να κολλήσετε με έναν τύπο επιλογής.

Οι επιλογές BSD και UNIX μπορούν να ομαδοποιηθούν.

Σε αυτήν την απλούστερη μορφή, όταν χρησιμοποιείται χωρίς καμία επιλογή, το ps θα εκτυπώσει τέσσερις στήλες πληροφοριών για τουλάχιστον δύο διεργασίες που εκτελούνται στο τρέχον κέλυφος, στο ίδιο το κέλυφος και στις διαδικασίες που εκτελούνται στο κέλυφος κατά την κλήση της εντολής.

ps

Η έξοδος περιλαμβάνει πληροφορίες σχετικά με το κέλυφος ( bash ) και τη διαδικασία που εκτελείται σε αυτό το κέλυφος ( ps , η εντολή που πληκτρολογήσατε):

PID TTY TIME CMD 1809 pts/0 00:00:00 bash 2043 pts/0 00:00:00 ps

Οι τέσσερις στήλες χαρακτηρίζονται ως PID , TTY , TIME και CMD .

  • PID - Το αναγνωριστικό διαδικασίας. Συνήθως, κατά την εκτέλεση της εντολής ps , οι πιο σημαντικές πληροφορίες που αναζητά ο χρήστης είναι η διαδικασία PID. Η γνώση του PID σάς επιτρέπει να σκοτώσετε μια δυσλειτουργία. TTY - Το όνομα του τερματικού ελέγχου για τη διαδικασία. TIME - Ο αθροιστικός χρόνος CPU της διαδικασίας, που εμφανίζεται σε λεπτά και δευτερόλεπτα. CMD - Το όνομα της εντολής που χρησιμοποιήθηκε για να ξεκινήσει η διαδικασία.

Η παραπάνω έξοδος δεν είναι πολύ χρήσιμη, καθώς δεν περιέχει πολλές πληροφορίες. Η πραγματική ισχύς της εντολής ps έρχεται όταν ξεκινά με πρόσθετες επιλογές.

Η εντολή ps δέχεται έναν τεράστιο αριθμό επιλογών που μπορούν να χρησιμοποιηθούν για την εμφάνιση μιας συγκεκριμένης ομάδας διαδικασιών και διαφορετικών πληροφοριών σχετικά με τη διαδικασία, αλλά μόνο μια χούφτα απαιτούνται στην καθημερινή χρήση.

ps χρησιμοποιείται συχνότερα με τον ακόλουθο συνδυασμό επιλογών:

Τύπος BSD:

ps aux

  • Η επιλογή a λέει στο ps να εμφανίζει τις διαδικασίες όλων των χρηστών. Μόνο οι διαδικασίες που δεν σχετίζονται με ένα τερματικό και τις διαδικασίες των ηγετών της ομάδας δεν εμφανίζονται. u σημαίνει μια μορφή προσανατολισμένη στο χρήστη που παρέχει λεπτομερείς πληροφορίες σχετικά με τις διαδικασίες. Η επιλογή x δίνει εντολή στο ps να απαριθμήσει τις διαδικασίες χωρίς τερματικό ελέγχου. Αυτές είναι κυρίως διαδικασίες που ξεκινούν κατά την εκκίνηση και εκτελούνται στο παρασκήνιο.

Η εντολή εμφανίζει πληροφορίες σε έντεκα στήλες με την ένδειξη USER , PID , %CPU , %MEM , VSZ , RSS , STAT , START , TTY , TIME και CMD .

USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND root 1 0.0 0.8 77616 8604 ? Ss 19:47 0:01 /sbin/init root 2 0.0 0.0 0 0 ? S 19:47 0:00…

Εξηγήσαμε ήδη τις ετικέτες PID , TTY , TIME και CMD . Ακολουθεί μια εξήγηση για άλλες ετικέτες:

  • USER - Ο χρήστης που τρέχει τη διαδικασία. %CPU - Η αξιοποίηση της διαδικασίας της CPU. %MEM - Το ποσοστό του καθορισμένου μεγέθους της διαμονής της διαδικασίας στη φυσική μνήμη του μηχανήματος. VSZ - Μέγεθος εικονικής μνήμης της διαδικασίας στο KiB. RSS - Το μέγεθος της φυσικής μνήμης που χρησιμοποιεί η διαδικασία. STAT - Ο κώδικας κατάστασης διαδικασίας, όπως Z (ζόμπι), S (ύπνος) και R (τρέξιμο). START - Η ώρα εκκίνησης της εντολής.

Η επιλογή f δηλώνει το ps για να εμφανίσει μια δέντρο προβολής των γονικών σε παιδικές διεργασίες:

ps auxf

Η εντολή ps σας επιτρέπει επίσης να ταξινομήσετε την έξοδο. Για παράδειγμα, για να ταξινομήσετε την έξοδο βάσει της χρήσης μνήμης, θα χρησιμοποιούσατε:

ps aux --sort=-%mem

Μορφή UNIX:

ps -ef

  • Η επιλογή -e καθοδηγεί το ps να εμφανίζει όλες τις διαδικασίες. -f είναι η λίστα πλήρους μορφής, η οποία παρέχει λεπτομερείς πληροφορίες σχετικά με τις διαδικασίες.

Η εντολή εμφανίζει πληροφορίες σε οκτώ στήλες με την ένδειξη UID , PID , PPID , C , STIME , TIME και CMD .

UID PID PPID C STIME TTY TIME CMD root 1 0 0 19:47 ? 00:00:01 /sbin/init root 2 0 0 19:47 ? 00:00:00…

Οι ετικέτες που δεν έχουν ήδη εξηγηθεί έχουν την ακόλουθη σημασία:

  • UID - Ίδιο με τον χρήστη USER , τον χρήστη που τρέχει τη διαδικασία. PPID - Το αναγνωριστικό της γονικής διαδικασίας. C - Ίδιος με το %CPU , τη χρήση της CPU διαδικασίας. STIME - Ίδιος με τον START , ο χρόνος εκκίνησης της εντολής.

Για να προβάλετε μόνο τις διεργασίες που εκτελούνται ως συγκεκριμένοι χρήστες, πληκτρολογήστε την ακόλουθη εντολή, όπου linuxize είναι το όνομα του χρήστη:

ps -f -U linuxize -u linuxize

Μορφή καθορισμένη από το χρήστη

Η επιλογή o σας επιτρέπει να καθορίσετε ποιες στήλες εμφανίζονται κατά την εκτέλεση της εντολής ps .

Για παράδειγμα, για να εκτυπώσετε πληροφορίες μόνο για τα PID και COMMAND , θα εκτελέσετε μία από τις ακόλουθες εντολές:

ps -efo pid, comm

ps auxo pid, comm

Χρήση ps με άλλες εντολές

ps μπορεί να χρησιμοποιηθεί σε συνδυασμό με άλλες εντολές μέσω σωληνώσεων.

ps -ef | less

Η έξοδος της εντολής ps μπορεί να φιλτραριστεί με grep . Για παράδειγμα, για να δείξετε μόνο τη διαδικασία που ανήκει στον χρήστη root που θα εκτελέσετε:

ps -ef | grep root

συμπέρασμα

Η εντολή ps είναι μια από τις πιο συνήθεις εντολές όταν αντιμετωπίζουμε προβλήματα σε συστήματα Linux. Έχει πολλές επιλογές, αλλά συνήθως, οι περισσότεροι χρήστες χρησιμοποιούν είτε ps aux ή ps -ef για να συλλέξουν πληροφορίες σχετικά με τις τρέχουσες διαδικασίες.

Για περισσότερες πληροφορίες σχετικά με το ps , πληκτρολογήστε man ps στο τερματικό σας.

ps τερματικό