Jak dowiedzieć się, przetwarza, czy wykonywalny lub plik binarny któreś żądanie lub zajęty/bezczynny (stan nie DZIAŁA)
Chcę zatrzymać/zabić proces na podstawie stanu przetwarzania pliku wykonywalnego.
Jak dowiedzieć się, przetwarza, czy wykonywalny lub plik binarny któreś żądanie lub zajęty/bezczynny (stan nie DZIAŁA)
Chcę zatrzymać/zabić proces na podstawie stanu przetwarzania pliku wykonywalnego.
Można sprawdzić kod stanu procesu procesu za pomocą ps
. To może dać bardziej szczegółowy obraz o aktualnym stanie tego procesu.
Zgodnie z man ps
:
PROCESS STATE CODES Here are the different values that the s, stat and state output specifiers (header "STAT" or "S") will display to describe the state of a process: D uninterruptible sleep (usually IO) I Idle kernel thread R running or runnable (on run queue) S interruptible sleep (waiting for an event to complete) T stopped by job control signal t stopped by debugger during the tracing W paging (not valid since the 2.6.xx kernel) X dead (should never be seen) Z defunct ("zombie") process, terminated but not reaped by its parent
Następnie można zrobić coś takiego:
ps --no-headers -o pid,state -p PID
Który wyprowadzał jedną z liter, reprezentujących stan procesu na górze, do tego PID procesu.
Można również zrobić ps --no-headers -o pid,state -p $(pgrep app_name)
. To wyświetla aktualny stan każdego procesu obsługiwanego przez aplikację.