Como posso interpretar o código de “terminal de controle” da saída de ps?

1

A saída terminal controladora do ps lista as coisas "Ss +". Como posso determinar o que esses códigos significam? Eu tentei olhar pelo manual do ps, que é um documento de 30 páginas, não encontrei nenhuma explicação.

    
por Tyler Durden 09.02.2017 / 15:44

2 respostas

1

Em 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)
           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

       For BSD formats and when the stat keyword is used, additional characters may be displayed:

           <    high-priority (not nice to other users)
           N    low-priority (nice to other users)
           L    has pages locked into memory (for real-time and custom IO)
           s    is a session leader
           l    is multi-threaded (using CLONE_THREAD, like NPTL pthreads do)
           +    is in the foreground process group
    
por 09.02.2017 / 16:43
0

Procure a coluna tt de ps output e use o comando tty da seguinte forma:

$ps ax |more
  PID   TT  STAT      TIME COMMAND
    1   ??  Ss     4:58.84 /sbin/launchd
   66   ??  Ss     1:05.03 /usr/sbin/syslogd
   67   ??  Ss     0:21.62 /usr/libexec/UserEventAgent (System)


$ps ax |grep bash
81939 s000  S+     0:00.09 -bash
82152 s001  S      0:00.04 -bash
82228 s001  S+     0:00.00 grep -I bash


$tty
/dev/ttys001


$ps ax |grep offlineimap-load
82261 s000  S+     0:00.02 /bin/bash /Users/pbarganski/Documents/bin/offlineimap-load
82417 s001  R+     0:00.01 grep -i offlineimap-load

Acima, o comando tty indica em qual terminal estou atualmente - terminal 's000' neste caso.

A partir do último comando, você notará que o comando grep -i foi executado a partir do terminal s001 , minha janela de terminal atual, no entanto, o script offlineimap-load está sendo executado a partir do terminal de controle s000 - minha primeira sessão de terminal - que, nesse caso, é simplesmente o primeiro terminal de tabulação no terminal.app.

    
por 18.11.2018 / 12:45

Tags