Was ist ein Befehl, um die Priorität eines Prozesses in Linux zu finden?

Antworten:

10

Der topBefehl listet die Priorität der ausgeführten Prozesse unter der PRÜberschrift auf. Wenn Sie es installiert haben, können Sie auch nach einem Prozess suchen und nach Priorität in sortieren htop.

jasonwryan
quelle
12

awk '{print $18}' /proc/1337/stat (holt den Preis für den Prozess 1337).

Andere Optionen:

Verwenden Sie ps -o pri. Geben Sie die Prozess-ID mit ein -p 1337. Oder verwenden Sie, um -ealle Prozesse aufzulisten.

Experimentieren Sie damit als Ausgangspunkt, wenn Sie mehr als nur die Priorität möchten:

ps -e -o uid,pid,ppid,pri,ni,cmd
MattBianco
quelle
5

psist wahrscheinlich der richtige Weg. Sie können sich dann zu der entsprechenden Zeile und Spalte begeben

Sarah
quelle
3
ps -o ni $(pidof processname)

Beispielsweise:

ps -o ni $(pidof mysqld)

# ps -o ni $(pidof mysqld) 
  NI
  15
Paul
quelle
2

Wenn Sie eine eingeschränkte Linux-Distribution haben, in der ps und top keine Prioritätsinformationen enthalten, können Sie die stat-Datei von proc nach Ihrer Prozess-ID durchsuchen, um die Prioritätsinformationen abzurufen.

cat /proc/PID/stat | awk '{print "priority " $18 " nice " $19}'

Die Werte an Position 18 und 19 der stat-Datei repräsentieren Priorität und Nizza

Weitere Informationen: https://linux.die.net/man/5/proc

Razan Paul
quelle
0
ps -le | grep 'process name'

ps -lp 'PID of specific process'
firo
quelle
0

Sie können Header mit --no-headers ausschließen, wenn ps es hat. Sie können "ps --no-headers -o pri $ (pidof)" verwenden, um nur die Priorität anzuzeigen. Verwenden Sie pgrep, wenn Sie kein pidof haben.

k9dog
quelle