Manuais para a linha de comandos

Man » Manual online do ps - documentação online detalhada para a página de manual do ps

🌍
ps - exibe um instantâneo dos processos atuais.

SINTAXE

ps [opções]

DESCRIÇÃO

ps exibe informações sobre uma seleção dos processos ativos. Se você deseja uma atualização repetitiva da seleção e das informações exibidas, use top.

Esta versão do ps aceita vários tipos de opções:

1 Opções UNIX, que podem ser agrupadas e devem ser precedidas por um traço.
2 Opções BSD, que podem ser agrupadas e não devem ser usadas com um traço.
3 Opções GNU, que são precedidas por dois traços.

Opções de diferentes tipos podem ser misturadas livremente, mas conflitos podem surgir. Existem algumas opções sinônimas, que são funcionalmente idênticas, devido às muitas normas e implementações de ps com as quais este ps é compatível.

Por padrão, ps seleciona todos os processos com o mesmo ID de usuário efetivo (euid=EUID) do usuário atual e associados ao mesmo terminal do invocador. Ele exibe o ID do processo (pid=PID), o terminal associado ao processo (tname=TTY), o tempo cumulativo da CPU no formato [DD-]hh:mm:ss (time=TIME) e o nome do executável (ucmd=CMD). A saída não é classificada por padrão.

O uso de opções no estilo BSD adicionará o estado do processo (stat=STAT) à exibição padrão e mostrará os argumentos do comando (args=COMMAND) em vez do nome do executável. Você pode substituir isso com a variável de ambiente PS_FORMAT. O uso de opções no estilo BSD também alterará a seleção de processos para incluir processos em outros terminais (TTYs) que pertencem a você; alternativamente, isso pode ser descrito como definir a seleção para ser o conjunto de todos os processos filtrados para excluir processos pertencentes a outros usuários ou que não estão em um terminal. Esses efeitos não são considerados quando as opções são descritas como sendo "idênticas" abaixo, portanto, -M será considerado idêntico a Z e assim por diante.

Exceto pelo que é descrito abaixo, as opções de seleção de processo são aditivas. A seleção padrão é descartada e, em seguida, os processos selecionados são adicionados ao conjunto de processos a serem exibidos. Um processo será exibido se atender a qualquer um dos critérios de seleção fornecidos.

EXEMPLOS

Para ver todos os processos no sistema usando a sintaxe padrão: ps -e ps -ef ps -eF ps -ely

Para ver todos os processos no sistema usando a sintaxe BSD: ps ax ps axu

Para imprimir uma árvore de processos: ps -ejH ps axjf

Para obter informações sobre threads: ps -eLf ps axms

Para obter informações de segurança: ps -eo euser,ruser,suser,fuser,f,comm,label ps axZ ps -eM

Para ver todos os processos em execução como root (ID real e efetivo) no formato de usuário: ps -U root -u root u

Para ver todos os processos com um formato definido pelo usuário: ps -eo pid,tid,class,rtprio,ni,pri,psr,pcpu,stat,wchan:14,comm ps axo stat,euid,ruid,tty,tpgid,sess,pgrp,ppid,pid,pcpu,comm ps -Ao pid,tt,user,fname,tmout,f,wchan


Imprime apenas os IDs de processo do syslogd:

ps -C syslogd -o pid=

Imprime apenas o nome do PID 42:

ps -q 42 -o comm=

SELEÇÃO SIMPLES DE PROCESSO

a      Remove a restrição do estilo BSD de "apenas você mesmo", que é imposta ao conjunto de todos os
    processos quando algumas opções no estilo BSD (sem "-") são usadas ou quando a configuração de
    personalidade do ps é semelhante à do BSD. O conjunto de processos selecionados desta forma é
    adicional ao conjunto de processos selecionados por outros meios. Uma descrição alternativa é
    que esta opção faz com que o ps liste todos os processos com um terminal (tty) ou liste todos os
    processos quando usado em conjunto com a opção x.

-A     Seleciona todos os processos. Idêntico a -e.

-a     Seleciona todos os processos, exceto os líderes de sessão (veja getsid(2)) e os processos
    não associados a um terminal.

-d     Seleciona todos os processos, exceto os líderes de sessão.

--deselect
Seleciona todos os processos, exceto aqueles que atendem às condições especificadas (nega a
    seleção). Idêntico a -N.

-e     Seleciona todos os processos. Idêntico a -A.

g      Realmente todos, até os líderes de sessão. Esta flag está obsoleta e pode ser descontinuada
    em uma versão futura. Normalmente, ela é implícita pela flag a e só é útil quando se opera
    na personalidade sunos4.

-N     Seleciona todos os processos, exceto aqueles que atendem às condições especificadas (nega a
    seleção). Idêntico a --deselect.

T      Seleciona todos os processos associados a este terminal. Idêntico à opção t sem nenhum
    argumento.

r      Restringe a seleção para apenas processos em execução.

x      Remove a restrição do estilo BSD de "deve ter um tty", que é imposta ao conjunto de todos os
processos quando algumas opções no estilo BSD (sem "-") são usadas ou quando a configuração de
personalidade do ps é semelhante à do BSD. O conjunto de processos selecionados desta forma é
adicional ao conjunto de processos selecionados por outros meios. Uma descrição alternativa é
que esta opção faz com que o ps liste todos os processos pertencentes a você (mesmo EUID que ps)
ou liste todos os processos quando usado em conjunto com a opção a.

SELEÇÃO DE PROCESSO POR LISTA

Essas opções aceitam um único argumento na forma de uma lista separada por espaços ou vírgulas. Elas podem ser usadas várias vezes. Por exemplo: ps -p "1 2" -p 3,4

123   Idêntico a --pid 123.

+123   Idêntico a --sid 123.

-123   Seleciona pelo ID do grupo de processo (PGID).

-C cmdlist
Seleciona pelo nome do comando. Isso seleciona os processos cujo nome executável está na lista
    cmdlist. OBSERVAÇÃO: O nome do comando não é o mesmo que a linha de comando. Versões anteriores
    do procps e do kernel truncavam este nome de comando para 15 caracteres. Essa limitação não
    existe mais, tanto no procps quanto no kernel. Se você dependia de corresponder apenas 15
    caracteres, pode não obter mais uma correspondência.

-G grplist
Seleciona pelo ID ou nome do grupo real (RGID). Isso seleciona os processos cujo nome ou ID do
grupo real está na lista grplist. O ID do grupo real identifica o grupo do usuário que criou
o processo, veja getgid(2).

-g grplist
Selecione por sessão OU por nome de grupo efetivo. A seleção por sessão é especificada por
vários padrões, mas a seleção por grupo efetivo é o comportamento lógico que vários outros
sistemas operacionais usam. Este `ps` selecionará por sessão quando a lista for totalmente
numérica (como as sessões). Os números de ID de grupo funcionarão apenas quando alguns nomes
de grupo também forem especificados. Veja as opções `-s` e `--group`.

--Group grplist
Selecione por ID de grupo real (RGID) ou nome. Idêntico a `-G`.

--group grplist
Selecione por ID de grupo efetivo (EGID) ou nome. Isso seleciona os processos cujo nome ou
ID de grupo efetivo está em `grplist`. O ID de grupo efetivo descreve o grupo cujas
permissões de acesso a arquivos são usadas pelo processo (veja `geteuid(2)`). A opção `-g` é
frequentemente uma alternativa para `--group`.

p pidlist
Selecione por ID de processo. Idêntico a `-p` e `--pid`.

-p pidlist
Selecione por PID. Isso seleciona os processos cujos números de ID de processo aparecem em
`pidlist`. Idêntico a `p` e `--pid`.

--pid pidlist
Selecione por ID de processo. Idêntico a `-p` e `p`.

--ppid pidlist
Selecione por ID de processo pai. Isso seleciona os processos com um ID de processo pai em
`pidlist`. Ou seja, seleciona os processos que são filhos dos listados em `pidlist`.

q pidlist
Selecione por ID de processo (modo rápido). Idêntico a `-q` e `--quick-pid`.

-q pidlist
Selecione por PID (modo rápido). Isso seleciona os processos cujos números de ID de processo
aparecem em `pidlist`. Com esta opção, o `ps` lê apenas as informações necessárias para os
IDs listados em `pidlist` e não aplica regras de filtragem adicionais. A ordem dos IDs não é
ordenada e é preservada. Nenhuma opção de seleção, ordenação ou listagem de tipo de árvore
adicional é permitida neste modo. Idêntico a `q` e `--quick-pid`.

--quick-pid pidlist
Selecione por ID de processo (modo rápido). Idêntico a `-q` e `q`.

-s sesslist
Selecione por ID de sessão. Isso seleciona os processos com um ID de sessão especificado em
`sesslist`.

--sid sesslist
Selecione por ID de sessão. Idêntico a `-s`.

t ttylist
Selecione por tty. Quase idêntico a `-t` e `--tty`, mas também pode ser usado com uma
`ttylist` vazia para indicar o terminal associado ao `ps`. Usar a opção `T` é considerado
mais limpo do que usar `t` com uma `ttylist` vazia.

-t ttylist
Selecione por tty. Isso seleciona os processos associados aos terminais fornecidos em
`ttylist`. Os terminais (ttys ou telas para saída de texto) podem ser especificados em várias
formas: `/dev/ttyS1`, `ttyS1`, `S1`. Um simples `"-"` pode ser usado para selecionar os
processos que não estão anexados a nenhum terminal.

--tty ttylist
Selecione por terminal. Idêntico a `-t` e `t`.

U userlist
Selecione por ID de usuário efetivo (EUID) ou nome. Isso seleciona os processos cujo nome ou
ID de usuário efetivo está em `userlist`. O ID de usuário efetivo descreve o usuário cujas
permissões de acesso a arquivos são usadas pelo processo (veja `geteuid(2)`). Idêntico a `-u` e
`--user`.

-U userlist
Seleciona pelo ID de usuário real (RUID) ou nome. Seleciona os processos cujo nome de usuário real ou ID está na lista userlist. O ID de usuário real identifica o usuário que criou o processo, veja getuid(2).

-u userlist
Seleciona pelo ID de usuário efetivo (EUID) ou nome. Isso seleciona os processos cujo nome de usuário efetivo ou ID está em userlist.

O ID de usuário efetivo descreve o usuário cujas permissões de acesso ao arquivo são usadas pelo processo (veja geteuid(2)). Idêntico a U e --user.

--User userlist
Seleciona pelo ID de usuário real (RUID) ou nome. Idêntico a -U.

--user userlist
Seleciona pelo ID de usuário efetivo (EUID) ou nome. Idêntico a -u e U.

CONTROLE DO FORMATO DE SAÍDA

Essas opções são usadas para escolher as informações exibidas por ps. A saída pode variar de acordo com a personalidade.

-c     Mostra informações de agendamento diferentes para a opção -l.

--context
Exibe o formato de contexto de segurança (para SELinux).

-f     Lista no formato completo. Esta opção pode ser combinada com muitas outras opções de estilo UNIX para adicionar colunas adicionais. Também faz com que os argumentos do comando sejam impressos. Quando usado com -L, as colunas NLWP (número de threads) e LWP (ID da thread) serão adicionadas. Veja a opção c, a palavra-chave de formato args e a palavra-chave de formato comm.

-F     Formato completo extra. Veja a opção -f, que -F implica.

--format format
Formato definido pelo usuário. Idêntico a -o e o.

j      Formato de controle de trabalho BSD.

-j     Formato de trabalhos.

l      Exibe o formato longo BSD.

-l     Formato longo. A opção -y geralmente é útil com isso.

-M     Adiciona uma coluna de dados de segurança. Idêntico a Z (para SELinux).

O format
é pré-carregado de o (sobrecarregado). A opção BSD O pode atuar como -O (formato de saída definido pelo usuário com algumas colunas padrão predefinidas) ou pode ser usada para especificar a ordem de classificação. A heurística é usada para determinar o comportamento desta opção. Para garantir que o comportamento desejado seja obtido (classificação ou formatação), especifique a opção de outra forma (por exemplo, com -O ou --sort). Quando usado como uma opção de formatação, é idêntico a -O, com a personalidade BSD.

-O format
Como -o, mas pré-carregado com algumas colunas padrão. Idêntico a -o pid,format,state,tname,time,command ou -o pid,format,tname,time,cmd, veja -o abaixo.

o format
Especifica o formato definido pelo usuário. Idêntico a -o e --format.

-o format
Formato definido pelo usuário. format é um único argumento na forma de uma lista separada por espaços ou vírgulas, que oferece uma maneira de especificar colunas de saída individuais. As palavras-chave reconhecidas são descritas na seção PADRÕES DE FORMATO. Os cabeçalhos podem ser renomeados (ps -o pid,ruser=RealUser -o comm=Command) conforme desejado. Se todos os cabeçalhos de coluna estiverem vazios (ps -o pid= -o comm=), a linha de cabeçalho não será exibida. A largura da coluna aumentará conforme necessário para cabeçalhos largos; isso pode ser usado para ampliar colunas como WCHAN (ps -o pid,wchan=WIDE-WCHAN-COLUMN -o comm). O controle explícito de largura (ps -o pid,wchan:42,cmd) também é oferecido. O comportamento de ps -o pid=X,comm=Y varia com a personalidade; a saída pode ser uma coluna chamada "X,comm=Y" ou duas colunas chamadas "X" e "Y". Use várias opções -o quando tiver dúvidas. Use a variável de ambiente PS_FORMAT para especificar um padrão, conforme desejado; DefSysV e DefBSD são macros que podem ser usadas para escolher as colunas padrão UNIX ou BSD.

-P Mostra uma coluna com psr.

s Mostra o formato do sinal.

u Mostra o formato orientado ao usuário.

v Mostra o formato de memória virtual.

X Mostra o formato de registro.

-y Não mostra as flags; mostra o RSS no lugar do endereço. Esta opção só pode ser usada com -l.

Z Adiciona uma coluna de dados de segurança. Idêntico a -M (para SELinux).

MODIFICADORES DE SAÍDA

c Mostra o nome verdadeiro do comando. Isso é derivado do nome do arquivo executável, em vez do valor de argv. Os argumentos do comando e quaisquer modificações neles, portanto, não são mostrados. Esta opção efetivamente transforma o modificador de formato args no modificador de formato comm; é útil com a opção de formato -f e com as várias opções de formato no estilo BSD, que normalmente exibem os argumentos do comando. Veja a opção -f, o modificador de formato args e o modificador de formato comm.

--cols n

Define a largura da tela.

--columns n

Define a largura da tela.

--cumulative

Inclui alguns dados do processo filho morto (como uma soma com o pai).

-D formato

Define o formato da data do campo lstart para o formato. Este formato é analisado por strftime(3) e deve ter no máximo 24 caracteres para não desalinharem as colunas.

--date-format formato

Idêntico a -D.

e Mostra o ambiente após o comando.

f Arte ASCII da hierarquia de processos (floresta).

--forest

Árvore de processos em arte ASCII.

h Sem cabeçalho. (ou, um cabeçalho por tela na personalidade BSD). A opção h é problemática. O BSD padrão do ps usa esta opção para imprimir um cabeçalho em cada página de saída, mas o Linux mais antigo do ps usa esta opção para desabilitar completamente o cabeçalho. Esta versão do ps segue o uso do Linux de não imprimir o cabeçalho, a menos que a personalidade BSD tenha sido selecionada, caso em que ele imprime um cabeçalho em cada página de saída. Independentemente da personalidade atual, você pode usar as opções longas --headers e --no-headers para habilitar a impressão de cabeçalhos em cada página ou desabilitar os cabeçalhos completamente, respectivamente.

-H Mostra a hierarquia de processos (floresta).

--headers

Repete as linhas de cabeçalho, uma por página de saída.

k especifica a ordem de classificação. A sintaxe de classificação é [+|-]chave[,[+|-]chave[,...]]. Escolha uma chave de várias letras da seção PADRÕES DE FORMATO. O sinal "+" é opcional, pois a direção padrão é a ordem numérica ou lexicográfica crescente. Idêntico a --sort.

Exemplos:
ps jaxkuid,-ppid,+pid
ps axk comm o comm,args
ps kstart_time -ef

--lines n

Define a altura da tela.


n      Saída numérica para WCHAN e USER (incluindo todos os tipos de UID e GID).

--no-headers

Não imprime nenhuma linha de cabeçalho. --no-heading é um alias para esta opção.

O order

Ordem de classificação (sobrecarregada). A opção BSD O pode funcionar como -O (formato de saída definido pelo usuário com alguns campos predefinidos) ou pode ser usada para especificar a ordem de classificação. Heurísticas são usadas para determinar o comportamento desta opção. Para garantir que o comportamento desejado seja obtido (classificação ou formatação), especifique a opção de outra forma (por exemplo, com -O ou --sort).

Para classificação, a sintaxe obsoleta da opção BSD O é O[+|-]k1[,[+|-]k2[,...]]. Ela ordena a lista de processos de acordo com a classificação em vários níveis especificada pela sequência de chaves curtas de uma letra k1, k2, ... descritas na seção OBSOLETE SORT KEYS abaixo. O "+" é opcional, apenas reiterando a direção padrão em uma chave, mas pode ajudar a distinguir uma classificação O de uma formatação O. O "-" inverte a direção apenas na chave que o precede.

--rows n

Define a altura da tela.

S      Soma algumas informações, como o uso da CPU, de processos filhos mortos em seus processos pai.

Isso é útil para examinar um sistema onde um processo pai cria repetidamente processos filhos de curta duração para realizar o trabalho.

--sort spec

Especifica a ordem de classificação. A sintaxe de classificação é [+|-]key[,[+|-]key[,...]]. Escolha uma chave de várias letras da seção STANDARD FORMAT SPECIFIERS. O "+" é opcional, pois a direção padrão é ordem numérica ou lexicográfica crescente. Idêntico a k. Por exemplo: ps jax --sort=uid,-ppid,+pid

--signames

Mostra as máscaras de sinal usando nomes de sinal abreviados e expande a coluna. Se a largura da coluna não puder mostrar todos os sinais, a coluna terminará com um sinal de mais "+". As colunas com apenas um hífen não têm sinais.

w      Saída ampla. Use esta opção duas vezes para largura ilimitada.

-w     Saída ampla. Use esta opção duas vezes para largura ilimitada.

--width n

Define a largura da tela.

EXIBIÇÃO DE THREADS

H      Mostra threads como se fossem processos.

-L     Mostra threads, possivelmente com as colunas LWP e NLWP.

m      Mostra threads após os processos.

-m     Mostra threads após os processos.

-T     Mostra threads, possivelmente com a coluna SPID.

OUTRAS INFORMAÇÕES

--help section

Imprime uma mensagem de ajuda. O argumento section pode ser um dos seguintes: simple, list, output, threads, misc ou all. O argumento pode ser abreviado para uma das letras sublinhadas, como em: s|l|o|t|m|a.

--info Imprime informações de depuração.

L      Lista todos os especificadores de formato.

V      Imprime a versão do procps-ng.

-V     Imprime a versão do procps-ng.

--version

Imprime a versão do procps-ng.

NOTAS

Este ps funciona lendo os arquivos virtuais em /proc. Este ps não precisa ser definido como setuid kmem nem ter privilégios especiais para ser executado. Não conceda a este ps permissões especiais.

O uso da CPU é atualmente expresso como a porcentagem de tempo gasto em execução durante todo o período de vida de um processo. Isso não é ideal e não está em conformidade com os padrões aos quais o ps se conforma. É improvável que o uso da CPU some exatamente 100%.

Os campos SIZE e RSS não contam algumas partes de um processo, incluindo as tabelas de páginas, a pilha do kernel, a estrutura thread_info e a estrutura task_struct. Geralmente, isso representa pelo menos 20 KiB de memória que está sempre residente. SIZE é o tamanho virtual do processo (código+dados+pilha).

Processos marcados como são processos "zumbis" que permanecem porque seu processo pai não os destruiu corretamente. Esses processos serão destruídos por init(8) se o processo pai sair.

Se o comprimento do nome de usuário for maior que a largura da coluna de exibição, o nome de usuário será truncado. Consulte as opções de formatação -o e -O para personalizar o comprimento.

Opções de comando como ps -aux não são recomendadas, pois são uma confusão de dois padrões diferentes. De acordo com os padrões POSIX e UNIX, o comando acima solicita exibir todos os processos com um TTY (geralmente os comandos que os usuários estão executando) mais todos os processos pertencentes a um usuário chamado x. Se esse usuário não existir, o ps assumirá que você realmente quis dizer "ps aux".

FLAGS DO PROCESSO

A soma desses valores é exibida na coluna "F", que é fornecida pelo especificador de saída de flags:

1   forked, mas não executou
4   usou privilégios de superusuário

CÓDIGOS DE ESTADO DO PROCESSO

Aqui estão os diferentes valores que os especificadores de saída s, stat e state (cabeçalho "STAT" ou "S") exibirão para descrever o estado de um processo:

D   suspensão ininterruptível (geralmente E/S)
I   thread de kernel ocioso
R   em execução ou executável (na fila de execução)
S   suspensão interruptível (aguardando a conclusão de um evento)
T   interrompido por um sinal de controle de tarefa
t   interrompido pelo depurador durante o rastreamento
W   paginação (não válido desde o kernel 2.6.xx)
X   morto (nunca deve ser visto)
Z   processo "zumbi", encerrado, mas não reaproveitado por seu processo pai

Para formatos BSD e quando a palavra-chave stat é usada, caracteres adicionais podem ser exibidos:

<   alta prioridade (não é amigável para outros usuários)
N   baixa prioridade (amigável para outros usuários)
L   tem páginas bloqueadas na memória (para E/S em tempo real e personalizada)
s   é um líder de sessão
l   é multi-thread (usando CLONE_THREAD, como as threads NPTL fazem)
+   está no grupo de processos em primeiro plano

CHAVES DE ORDENAÇÃO OBSOLETAS

Essas chaves são usadas pela opção BSD O (quando é usada para ordenação). A opção GNU --sort não usa essas chaves, mas os especificadores descritos abaixo na seção PADRÕES DE FORMATO:

Observe que os valores usados na ordenação são os valores internos que o ps usa e não os valores "processados" usados em alguns dos campos de formato de saída (por exemplo, a ordenação por tty ordenará o número do dispositivo, não de acordo com o nome do terminal exibido). Envie a saída do ps para o comando [sort]({filename}../../sort)(1) se quiser ordenar os valores processados.
CHAVE   LONG    DESCRIÇÃO
c   cmd nome simples do executável
C   pcpu    utilização da CPU
f   flags   flags como no campo F de formato longo
g   pgrp    ID do grupo de processos
G   tpgid   grupo de processos do TTY de controle
j   cutime  tempo de usuário cumulativo
J   cstime  tempo de sistema cumulativo
k   utime   tempo de usuário
m   min_flt número de faltas de página menores
M   maj_flt número de faltas de página maiores
n   cmin_flt    faltas de página menores cumulativas
N   cmaj_flt    faltas de página maiores cumulativas
o   session ID de sessão
p   pid ID de processo
P   ppid    ID do processo pai
r   rss tamanho do conjunto residente
R   resident    páginas residentes
s   size    tamanho da memória em kilobytes
S   share   quantidade de páginas compartilhadas
t   tty o número do dispositivo do TTY de controle
T   start_time  hora em que o processo foi iniciado
U   uid ID de usuário
u   user    nome de usuário
v   vsize   tamanho total da VM em KiB
y   priority    prioridade de agendamento do kernel

DESCRITORES DE FORMATO AIX

Este ps suporta descritores de formato AIX, que funcionam de forma semelhante aos códigos de formatação de printf(1) e printf(3). Por exemplo, a saída padrão normal pode ser produzida com isso: ps -eo "%p %y %x %c". Os CÓDIGOS NORMIS são descritos na próxima seção. CÓDIGO NORMAL CABECALHO %C pcpu %CPU %G group GRUPO %P ppid PPID %U user USUÁRIO %a args COMANDO %c comm COMANDO %g rgroup RGRUPO %n nice NI %p pid PID %r pgid PGID %t etime DECORRIDO %u ruser RUSER %x time TEMPO %y tty TTY %z vsz VSZ

ESPECIFICADORES DE FORMATO PADRÃO

Aqui estão as diferentes palavras-chave que podem ser usadas para controlar o formato de saída (por exemplo, com a opção -o) ou para classificar os processos selecionados com a opção --sort no estilo GNU.

Por exemplo: ps -eo pid,user,args --sort user

Esta versão de ps tenta reconhecer a maioria das palavras-chave usadas em outras implementações de ps.

Os seguintes especificadores de formato definidos pelo usuário podem conter espaços: args, cmd, comm, command, fname, ucmd, ucomm, lstart, bsdstart, start.

Algumas palavras-chave podem não estar disponíveis para classificação.

CÓDIGO        CABECALHO    DESCRIÇÃO

%cpu        %CPU      Utilização da CPU do processo no formato "##.#". Atualmente, é o tempo da CPU
usado dividido pelo tempo em que o processo esteve em execução
(relação cputime/realtime), expresso como uma porcentagem. Não somará 100, a
menos que você tenha sorte. (alias pcpu).

%mem        %MEM      Relação do tamanho do conjunto residente do processo com a memória física da
máquina, expressa como uma porcentagem. (alias pmem).

ag_id       AGID      O identificador de autogrupo associado a um processo que opera em
conjunto com o agendador CFS para melhorar o desempenho interativo da área de
trabalho.

ag_nice     AGNI      O valor de "nice" do autogrupo que afeta a programação de todos os processos nesse
grupo.

args        COMMAND   comando com todos os seus argumentos como uma string. As modificações nos argumentos
podem ser mostradas. A saída nesta coluna pode conter espaços. Um processo
marcado como <defunct> está parcialmente morto, aguardando ser totalmente destruído pelo seu
processo pai. Às vezes, os argumentos do processo não estarão disponíveis; quando isso acontecer,
o comando `ps` imprimirá, em vez disso, o nome do executável entre colchetes. (alias cmd,
command). Consulte também a palavra-chave de formato `comm`, a opção `-f` e a opção `c`.

Quando especificado por último, esta coluna se estenderá até a borda da tela. Se o ps não puder determinar a largura da tela, como quando a saída é redirecionada (canalizada) para um arquivo ou outro comando, a largura da saída é indefinida (pode ser 80 ou ilimitada, determinada pela variável TERM, etc.). A variável de ambiente COLUMNS ou a opção --cols podem ser usadas para determinar exatamente a largura neste caso. A opção w ou -w também pode ser usada para ajustar a largura.

blocked     BLOCKED   máscara dos sinais bloqueados, veja `signal(7)`. De acordo com a largura do
campo, uma máscara de 32 ou 64 bits em formato hexadecimal é exibida, a menos que a
opção `--signames` seja usada. (alias `sig_block`, `sigmask`).

bsdstart    START     hora em que o comando foi iniciado. Se o processo foi iniciado há menos de 24 horas
atrás, o formato de saída é " HH:MM", caso contrário, é " Mmm:SS" (onde Mmm são os
três letras do mês). Veja também `lstart`, `start`, `start_time` e `stime`.

bsdtime     TIME      tempo de CPU acumulado, usuário + sistema. O formato de exibição é geralmente
"MMM:SS", mas pode ser deslocado para a direita se o processo usou mais de 999
minutos de tempo de CPU.

c           C         utilização do processador. Atualmente, este é o valor inteiro da porcentagem
de uso ao longo da vida útil do processo. (veja `%cpu`).

caught      CAUGHT    máscara dos sinais capturados, veja `signal(7)`. De acordo com a largura do
campo, uma máscara de 32 ou 64 bits em formato hexadecimal é exibida, a menos que a
opção `--signames` seja usada. (alias `sig_catch`, `sigcatch`).

cgname      CGNAME    nome de exibição dos grupos de controle aos quais o processo pertence.

cgroup      CGROUP    exibe os grupos de controle aos quais o processo pertence.

cgroupns    CGROUPNS  Número de inode exclusivo que descreve o namespace ao qual o processo pertence. Veja
os namespaces(7).

class       CLS       classe de agendamento do processo. (alias `policy`, `cls`). Os possíveis valores do campo são:

-    não relatado
TS   SCHED_OTHER
FF   SCHED_FIFO
RR   SCHED_RR
B    SCHED_BATCH
ISO  SCHED_ISO
IDL  SCHED_IDLE
DLN  SCHED_DEADLINE
?    valor desconhecido

cls         CLS       classe de agendamento do processo. (alias `policy`, `cls`). Os possíveis valores do campo são:

-    não relatado
TS   SCHED_OTHER
FF   SCHED_FIFO
RR   SCHED_RR
B    SCHED_BATCH
ISO  SCHED_ISO
IDL  SCHED_IDLE
DLN  SCHED_DEADLINE
?    valor desconhecido

cmd         CMD       veja `args`. (alias `args`, `command`).

comm        COMMAND   nome do comando (apenas o nome do executável). A saída nesta coluna pode
conter espaços. (alias ucmd, ucomm). Consulte também a palavra-chave de formato args,
a opção -f e a opção c.

Quando especificado por último, esta coluna se estenderá até a borda da tela. Se o ps não puder determinar a largura da tela, como quando a saída é redirecionada (canalizada) para um arquivo ou outro comando, a largura da saída é indefinida (pode ser 80, ilimitada, determinada pela variável TERM e assim por diante). A variável de ambiente COLUMNS ou a opção --cols podem ser usadas para determinar exatamente a largura neste caso. A opção w ou -w também pode ser usada para ajustar a largura.

command     COMMAND   Veja args. (alias args, command).

cp          CP        uso de CPU em porcentagem (décimos de porcentagem). (veja %cpu).

cputime     TIME      tempo de CPU cumulativo, no formato "[DD-]hh:mm:ss". (alias time).

cputimes    TIME      tempo de CPU cumulativo em segundos (alias times).

cuc         %CUC      A utilização da CPU de um processo, incluindo processos filhos inativos, em um
formato "##.###" estendido. (veja também %cpu, c, cp, cuu, pcpu).

cuu         %CUU      A utilização da CPU de um processo em um formato "##.###" estendido. (veja também
%cpu, c, cp, cuc, pcpu).

drs         DRS       tamanho do conjunto residente de dados, a quantidade de memória privada reservada por um processo.

Também é conhecido como DATA. Essa memória pode não estar mapeada para rss, mas sempre será incluída na quantidade de vsz.

egid        EGID      ID de grupo efetivo do processo como um número decimal. (alias
gid).

egroup      EGROUP    ID de grupo efetivo do processo. Este será o ID de grupo textual, se
puder ser obtido e a largura do campo permitir, ou uma representação decimal
caso contrário. (alias group).

eip         EIP       ponteiro de instrução. A partir do kernel 4.9.xx, será zerado, a menos que a tarefa esteja
saindo ou sendo despejada no core.

esp         ESP       ponteiro de pilha. A partir do kernel 4.9.xx, será zerado, a menos que a tarefa esteja
saindo ou sendo despejada no core.

etime       ELAPSED   tempo decorrido desde o início do processo, no formato [[DD-]hh:]mm:ss.

etimes      ELAPSED   tempo decorrido desde o início do processo, em segundos.

euid        EUID      ID de usuário efetivo (alias uid).

euser       EUSER     nome de usuário efetivo. Este será o ID de usuário textual, se puder ser
obtido e a largura do campo permitir, ou uma representação decimal
caso contrário. A opção n pode ser usada para forçar a representação decimal.
(alias uname, user).

exe         EXE       caminho para o executável. Útil se o caminho não puder ser impresso por meio de cmd, comm ou
opções de formato args.

f           F         sinalizadores associados ao processo, veja a seção SINALIZADORES DE PROCESSO. (alias
flag, flags).

fgid        FGID      ID de grupo de acesso ao sistema de arquivos. (alias fsgid).

fgroup      FGROUP    ID de grupo de acesso ao sistema de arquivos. Este será o ID de grupo textual, se
puder ser obtido e a largura do campo permitir, ou uma representação decimal
caso contrário. (alias fsgroup).

flag        F         veja f. (alias f, flags).

flags       F         veja f. (alias f, flag).

fname       COMMAND   os primeiros 8 bytes do nome base do arquivo executável do processo. A saída
nesta coluna pode conter espaços.

fuid        FUID      ID de usuário de acesso ao sistema de arquivos. (alias fsuid).

fuser       FUSER     ID de usuário de acesso ao sistema de arquivos. Este será o ID de usuário em
formato de texto, se puder ser obtido e a largura do campo permitir, ou uma
representação decimal, caso contrário.

gid         GID       veja egid. (alias egid).

group       GROUP     veja egroup. (alias egroup).

ignored     IGNORED   máscara dos sinais ignorados, veja signal(7). De acordo com a largura do
campo, uma máscara de 32 ou 64 bits em formato hexadecimal é exibida, a
menos que a opção --signames seja usada. (alias sig_ignore, sigignore).

ipcns       IPCNS     Número de inode exclusivo que descreve o namespace ao qual o processo pertence.
Veja namespaces(7).

label       LABEL     rótulo de segurança, mais comumente usado para dados de contexto SELinux. Este é
para o Controle de Acesso Obrigatório ("MAC") encontrado em sistemas de alta
segurança.

lstart      STARTED   hora em que o comando foi iniciado. Isso estará no formato "DDD mmm HH:MM:SS AAA"
a menos que seja alterado pela opção -D.

lsession    SESSION   exibe o identificador da sessão de login de um processo, se o suporte do
systemd foi incluído.

luid        LUID      exibe o ID de Login associado a um processo.

lwp         LWP       ID de processo leve (thread) da entidade despachável (alias spid, tid). Veja tid
para informações adicionais.

lxc         LXC       O nome do contêiner lxc dentro do qual uma tarefa está sendo executada. Se um
processo não estiver sendo executado dentro de um contêiner, um hífen ('-') será
exibido.

machine     MACHINE   exibe o nome da máquina para processos atribuídos a VM ou contêiner, se o
suporte do systemd foi incluído.

maj_flt     MAJFLT    O número de falhas de página principal que ocorreram com este processo.

min_flt     MINFLT    O número de falhas de página secundária que ocorreram com este processo.

mntns       MNTNS     Número de inode exclusivo que descreve o namespace ao qual o processo pertence.
Veja namespaces(7).

netns       NETNS     Número de inode exclusivo que descreve o namespace ao qual o processo pertence.
Veja namespaces(7).

ni          NI        valor "nice". Isso varia de 19 (mais "nice") a -20 (não tão "nice" para outros),
veja [nice]({filename}../../nice)(1). (alias nice).

nice        NI        veja ni. (alias ni).

nlwp        NLWP      número de lwps (threads) no processo. (alias thcount).

numa        NUMA      O nó associado ao processador mais recentemente usado. Um -1 significa que as
informações NUMA não estão disponíveis.

nwchan      WCHAN     endereço da função do kernel na qual o processo está em repouso (use wchan se
você quiser o nome da função do kernel).

oom         OOM       Pontuação de falta de memória. O valor, variando de 0 a +1000, usado para
selecionar tarefa(s) para serem eliminadas quando a memória se esgota.

oomadj      OOMADJ    Fator de ajuste de falta de memória. O valor é adicionado à pontuação atual de falta de memória, que é então usado para determinar qual tarefa eliminar quando a memória estiver esgotada.

ouid        OWNER     exibe o identificador de usuário Unix do proprietário da sessão de um processo, se o suporte do systemd tiver sido incluído.

pcpu        %CPU      veja %cpu. (alias %cpu).

pending     PENDING   máscara dos sinais pendentes. Consulte signal(7). Os sinais pendentes no processo são distintos dos sinais pendentes em threads individuais. Use a opção m ou a opção -m para ver ambos. De acordo com a largura do campo, uma máscara hexadecimal de 32 ou 64 bits é exibida, a menos que a opção --signames seja usada. (alias sig).

pgid        PGID      ID do grupo de processos ou, equivalentemente, o ID do processo do líder do grupo de processos. (alias pgrp).

pgrp        PGRP      veja pgid. (alias pgid).

pid         PID       um número que representa o ID do processo (alias tgid).

pidns       PIDNS     Número de inode exclusivo que descreve o namespace ao qual o processo pertence. Consulte namespaces(7).

pmem        %MEM      veja %mem. (alias %mem).

policy      POL       classe de agendamento do processo. (alias class, cls). Valores possíveis são:

-    não relatado
TS   SCHED_OTHER
FF   SCHED_FIFO
RR   SCHED_RR
B    SCHED_BATCH
ISO  SCHED_ISO
IDL  SCHED_IDLE
DLN  SCHED_DEADLINE
?    valor desconhecido

ppid        PPID      ID do processo pai.

pri         PRI       prioridade do processo. Um número maior significa maior prioridade.

psr         PSR       processador no qual o processo foi executado pela última vez.

pss         PSS       Tamanho proporcional compartilhado, o tamanho da memória física não trocada, com a memória compartilhada contabilizada proporcionalmente para todas as tarefas que a mapeiam.

rbytes      RBYTES    Número de bytes que este processo realmente fez com que fossem buscados da camada de armazenamento.

rchars      RCHARS    Número de bytes que esta tarefa fez com que fossem lidos do armazenamento.

rgid        RGID      ID do grupo real.

rgroup      RGROUP    nome do grupo real. Este será o ID do grupo textual, se puder ser obtido e a largura do campo permitir, ou uma representação decimal caso contrário.

rops        ROPS      Número de operações de E/S de leitura, ou seja, chamadas de sistema como read(2) e pread(2).

rss         RSS       tamanho do conjunto residente, a memória física não trocada que uma tarefa usou (em quilobytes). (alias rssize, rsz).

rssize      RSS       veja rss. (alias rss, rsz).

rsz         RSZ       veja rss. (alias rss, rssize).

rtprio      RTPRIO    prioridade em tempo real.

ruid        RUID      ID do usuário real.

ruser       RUSER     ID do usuário real. Este será o ID do usuário textual, se puder ser obtido e a largura do campo permitir, ou uma representação decimal caso contrário.

s           S         exibição de estado mínimo (um caractere). Consulte a seção CÓDIGOS DE ESTADO DO PROCESSO para os diferentes valores. Consulte também stat se quiser que informações adicionais sejam exibidas. (alias state).

sched       SCH       política de agendamento do processo. As políticas SCHED_OTHER (SCHED_NORMAL),
SCHED_FIFO, SCHED_RR, SCHED_BATCH, SCHED_ISO, SCHED_IDLE e SCHED_DEADLINE
são exibidas como 0, 1, 2, 3, 4, 5 e 6, respectivamente.

seat        SEAT      exibe o identificador associado a todos os dispositivos de hardware atribuídos a
um local de trabalho específico, se o suporte systemd estiver incluído.

sess        SESS      ID da sessão ou, equivalentemente, o ID do processo do líder da sessão. (alias
session, sid).

sgi_p       P         processador no qual o processo está atualmente em execução. Exibe "*" se o
processo não estiver atualmente em execução ou em estado de execução.

sgid        SGID      ID de grupo salvo. (alias svgid).

sgroup      SGROUP    nome do grupo salvo. Este será o ID de grupo textual, se puder ser obtido
e a largura do campo permitir, ou uma representação decimal, caso contrário.

sid         SID       veja sess. (alias sess, session).

sig         PENDING   veja pending. (alias pending, sig_pend).

sigcatch    CAUGHT    veja caught. (alias caught, sig_catch).

sigignore   IGNORED   veja ignored. (alias ignored, sig_ignore).

sigmask     BLOCKED   veja blocked. (alias blocked, sig_block).

size        SIZE      quantidade aproximada de espaço de troca que seria necessária se o processo
tornasse todas as páginas graváveis e, em seguida, fosse trocado. Este número é
muito aproximado!

slice       SLICE     exibe a unidade de fatia à qual um processo pertence, se o suporte systemd
estiver incluído.

spid        SPID      veja lwp. (alias lwp, tid).

stackp      STACKP    endereço da parte inferior (início) da pilha para o processo.

start       STARTED   hora em que o comando foi iniciado. Se o processo foi iniciado há menos de 24
horas, o formato de saída é "HH:MM:SS", caso contrário, é "  Mmm dd" (onde Mmm é um
nome de mês de três letras). Veja também bsdstart, start, start_time e stime.

start_time  START     hora ou data de início do processo. Apenas o ano será exibido se o processo
não tiver sido iniciado no mesmo ano em que ps foi invocado, ou "MmmDD" se não
tiver sido iniciado no mesmo dia, ou "HH:MM" caso contrário. Veja também bsdstart,
start, lstart e stime.

stat        STAT      estado do processo com vários caracteres. Consulte a seção CÓDIGOS DE ESTADO
DO PROCESSO para obter o significado dos diferentes valores. Consulte também s e
state se você quiser apenas o primeiro caractere exibido.

state       S         veja s. (alias s).

stime       STIME     veja start_time. (alias start_time).

suid        SUID      ID de usuário salvo. (alias svuid).

supgid      SUPGID    IDs de grupo dos grupos suplementares, se houver. Consulte getgroups(2).

supgrp      SUPGRP    nomes de grupo dos grupos suplementares, se houver. Consulte getgroups(2).

suser       SUSER     nome de usuário salvo. Este será o ID de usuário textual, se puder ser obtido
e a largura do campo permitir, ou uma representação decimal, caso contrário. (alias
svuser).

svgid       SVGID     veja sgid. (alias sgid).

svuid       SVUID     veja suid. (alias suid).

sz          SZ        tamanho em páginas físicas da imagem do core do processo. Isso inclui
texto, dados e espaço de pilha. Os mapeamentos de dispositivo são excluídos atualmente; isso
está sujeito a alterações. Veja vsz e rss.

tgid        TGID      um número que representa o grupo de threads ao qual uma tarefa pertence (alias pid).
É o ID do processo do líder do grupo de threads.

thcount     THCNT     veja nlwp. (alias nlwp). número de threads do kernel pertencentes ao processo.

tid         TID       o número único que representa uma entidade despachável (alias spid, tid).
Este valor também pode aparecer como: um ID de processo (pid); um ID de grupo de processo
(pgrp); um ID de sessão para o líder da sessão (sid); um ID de grupo de threads para
o líder do grupo de threads (tgid); e um ID de grupo de processo tty para o
líder do grupo de processo (tpgid).

time        TIME      tempo de CPU cumulativo, formato "[DD-]HH:MM:SS". (alias cputime).

timens      TIMENS    número de inode exclusivo que descreve o namespace ao qual o processo pertence. Veja
namespaces(7).

times       TIME      tempo de CPU cumulativo em segundos (alias cputimes).

tname       TTY       tty (terminal) de controle. (alias tt, tty).

tpgid       TPGID     ID do processo em primeiro plano no tty (terminal) ao qual o processo
está conectado, ou -1 se o processo não estiver conectado a um tty.

trs         TRS       tamanho do conjunto residente de texto, a quantidade de memória física dedicada ao código executável.

tt          TT        tty (terminal) de controle. (alias tname, tty).

tty         TT        tty (terminal) de controle. (alias tname, tt).

ucmd        CMD       veja comm. (alias comm, ucomm).

ucomm       COMMAND   veja comm. (alias comm, ucmd).

uid         UID       veja euid. (alias euid).

uname       USER      veja euser. (alias euser, user).

unit        UNIT      exibe a unidade à qual um processo pertence, se o suporte do systemd foi
incluído.

user        USER      veja euser. (alias euser, uname).

userns      USERNS    número de inode exclusivo que descreve o namespace ao qual o processo pertence. Veja
namespaces(7).

uss         USS       tamanho do conjunto exclusivo, a memória física não trocada, que não é compartilhada com
outra tarefa.

utsns       UTSNS     número de inode exclusivo que descreve o namespace ao qual o processo pertence. Veja
namespaces(7).

uunit       UUNIT     exibe a unidade de usuário à qual um processo pertence, se o suporte do systemd foi
incluído.

vsize       VSZ       veja vsz. (alias vsz).

vsz         VSZ       tamanho da memória virtual do processo em KiB (unidades de 1024 bytes). Os mapeamentos de dispositivo são excluídos atualmente; isso está sujeito a alterações. (alias vsize).

wbytes      WBYTES    Número de bytes que este processo causou para serem enviados para a camada de armazenamento.

wcbytes     WCBYTES   Número de bytes de gravação cancelados.

wchan       WCHAN     nome da função do kernel na qual o processo está em espera.

wchars      WCHARS    Número de bytes que esta tarefa causou, ou deve causar, para serem escritos no
disco.

wops        WOPS      Número de operações de E/S de escrita – ou seja, chamadas de sistema como write(2) e
pwrite(2).

VARIÁVEIS DE AMBIENTE

As seguintes variáveis de ambiente podem afetar o ps:

COLUMNS

Substitui a largura padrão da tela.

LINES

Substitui a altura padrão da tela.

PS_PERSONALITY

Define como um dos seguintes: posix, old, linux, bsd, sun, digital... (veja a seção PERSONALIDADE abaixo).

CMD_ENV

Define como um dos seguintes: posix, old, linux, bsd, sun, digital... (veja a seção PERSONALIDADE abaixo).

I_WANT_A_BROKEN_PS

Força uma interpretação obsoleta da linha de comando.

LC_TIME

Formato de data.

LIBPROC_HIDE_KERNEL

Defina isso para qualquer valor para ocultar os threads do kernel normalmente exibidos com a opção -e. Isso é equivalente a selecionar --ppid 2 -p 2 --deselect. Também funciona no modo BSD.

PS_COLORS

Atualmente não suportado.

PS_FORMAT

Substituição padrão do formato de saída. Você pode definir isso como uma string de formato do tipo usada para a opção -o. Os valores DefSysV e DefBSD são particularmente úteis.

POSIXLY_CORRECT

Não encontre desculpas para ignorar "recursos" ruins.

POSIX2

Quando definido como "on", atua como POSIXLY_CORRECT.

UNIX95

Não encontre desculpas para ignorar "recursos" ruins.

_XPG

Cancela o comportamento não padronizado CMD_ENV=irix.

Em geral, é uma má ideia definir essas variáveis. A única exceção é CMD_ENV ou PS_PERSONALITY, que podem ser definidos como Linux para sistemas normais. Sem essa configuração, o ps segue as partes inúteis e ruins do padrão Unix98.

PERSONALIDADE

390       semelhante ao ps do OS/390 OpenEdition
aix        semelhante ao ps do AIX
bsd        semelhante ao ps do FreeBSD (totalmente não padronizado)
compaq     semelhante ao ps do Digital Unix
debian     semelhante ao ps antigo do Debian
digital    semelhante ao Tru64 (anteriormente Digital Unix, anteriormente OSF/1) ps
gnu        semelhante ao ps antigo do Debian
hp         semelhante ao ps do HP-UX
hpux       semelhante ao ps do HP-UX
irix       semelhante ao ps do Irix
linux      ***** recomendado *****
old        semelhante ao ps original do Linux (totalmente não padronizado)
os390      semelhante ao ps do OS/390 Open Edition
posix      padrão
s390       semelhante ao ps do OS/390 Open Edition
sco        semelhante ao ps do SCO
sgi        semelhante ao ps do Irix
solaris2   semelhante ao ps do Solaris 2+ (SunOS 5)
sunos4     semelhante ao ps do SunOS 4 (Solaris 1) (totalmente não padronizado)
svr4       padrão
sysv       padrão
tru64      semelhante ao Tru64 (anteriormente Digital Unix, anteriormente OSF/1) ps
unix       padrão
unix95     padrão
unix98     padrão

BUGS

Os campos bsdstart e start exibirão apenas o nome abreviado do mês em inglês. Os campos lstart e stime exibirão o nome abreviado do mês no local configurado, mas podem exceder a largura da coluna devido aos diferentes comprimentos dos nomes abreviados do mês e do dia em diferentes idiomas.

VEJA TAMBÉM

pgrep(1), pstree(1), top(1), strftime(3), proc(5).

PADRÕES

Este ps está em conformidade com:

1  Versão 2 da Especificação Única do Unix
2  The Open Group Technical Standard Base Specifications, Issue 6
3  IEEE Std 1003.1, 2004 Edition
4  X/Open System Interfaces Extension [UP XSI]
5  ISO/IEC 9945:2003

AUTOR

ps foi originalmente escrito por Branko Lankester. Michael K. Johnson o reescreveu significativamente
para usar o sistema de arquivos proc, mudando algumas coisas no processo. Michael Shields adicionou
o recurso de lista de PIDs. Charles Blake adicionou a classificação em vários níveis, a biblioteca
no estilo dirent, o banco de dados mapeado em memória de nome de dispositivo para número, a busca
binária aproximada diretamente em System.map e muitas correções de código e documentação. David
Mossberger-Tang escreveu o suporte BFD genérico para psupdate. Albert Cahalan reescreveu ps para
suporte total ao Unix98 e BSD, junto com alguns hacks feios para sintaxe obsoleta e estrangeira.

Por favor, envie relatórios de bugs para _. Não é necessário ou recomendado assinar uma lista de discussão.