Como usar o comando PS para encontrar processos em execução no Linux

Como usar o comando PS para encontrar processos em execução no Linux
A forma completa de ps é status do processo. É um comando usado para encontrar informações sobre processos atualmente em execução no Linux. PS é um comando muito importante do Linux.Neste artigo, mostrarei como usar o comando PS para encontrar processos de execução no Linux. Então vamos começar.

Diferentes tipos de opções:

O comando PS aceita opções diferentes.

  1. Opções do Unix - Tenha traço principal.
    $ ps -e
  1. Opções de BSD - não tenha traço principal.
    $ ps aux
  1. Opções GNU - tenha traço duplo líder.
    $ ps -pid 1001

Neste exemplo, usarei o Unix e às vezes as opções GNU. Mas as opções de BSD são semelhantes. Na maioria das vezes, você pode misturá -los sem problemas. Embora você não possa misturar algumas das opções, pois não funcionará. Por isso tem cuidado.

Encontrando todos os processos de execução:

Com o comando ps, você pode encontrar todos os processos em execução em sua máquina.

Para encontrar todos os processos de execução com o PS, use o PS da seguinte maneira,

$ ps -ef

Como você pode ver, o UID (ID do usuário), PID (ID do processo), PPID (ID do processo pai), Cmd (Comando usado para executar o processo) e algumas outras informações sobre todos os processos em execução são exibidas.

Você pode listar todos os processos em execução com diferentes ps combinação de opções. Eles mostrarão informações diferentes sobre os processos de execução. Você pode realmente contar ps Para exibir informações específicas, que chegaremos na seção posterior.

$ ps -e

Como você pode ver, ps -e mostra o PID, Tty (Número do terminal), TEMPO (tempo de execução do processo) e Cmd dos processos de execução. Isso é muito menos informações do que antes.

$ ps -ef

Ele mostra muitas informações sobre os processos de execução, mas algumas das colunas, como C (Utilização do processador), Sz (tamanho em páginas físicas), RSS (Tamanho do conjunto residente), Psr (Processador esse processo está atualmente atribuído), Stime (o momento em que o processo começou) etc. não são exibidos. Então, é um pouco mais compacto do que ps -ef.

Outra variante de PS,

$ ps -ely

Este te mostra você Uid (ID do usuário), PRI (prioridade atual do processo), Ni (bom valor) também. Então, é realmente útil.

Facilitando a navegação PS:

Um sistema Linux típico tem muito processo em execução em segundo plano. Então, a saída do ps O comando é muito longo. É mais difícil encontrar informações úteis lá. Mas, podemos usar um pager como menos Para procurar os processos um pouco mais fácil.

Você pode usar o menos Pager da seguinte maneira:

$ ps -ef | menos

A saída de ps será aberto com menos.

Agora, você pode usar e Chaves de seta para navegar na lista com muita facilidade.

Você também pode procurar palavras -chave específicas aqui. Isso é realmente útil para encontrar os processos que você está procurando.

Para procurar um processo, digamos ACPI, digite a palavra -chave como segue no menos Pager.

/ACPI

Agora, pressione .

Como você pode ver, o processo com a palavra -chave ACPI é destacado.

Você também pode pressionar n e p chaves para ir para a próxima e anterior partida (se disponível), respectivamente.

Como você pode ver, eu pressionei n para e o próximo processo com a palavra -chave ACPI é destacado.

Para sair do pager, pressione q.

Selecione manualmente as colunas a serem exibidas no PS:

O ps -e / ps -ef / ps -ef Comando etc mostra algumas colunas padrão. Mas, se você quiser, pode dizer ao PS para mostrar colunas específicas ou adicionar colunas adicionais ao conjunto padrão de colunas.

Por exemplo, digamos, você quer ver apenas %Mem (porcentagem de uso da memória), PID (ID do processo) e Uid (ID do proprietário do processo) e COMANDO (Comando do processo) e execute o PS da seguinte maneira:

$ ps -e -o %mem, pid, uid, comm

Como você pode ver, o PS exibiu apenas as informações que eu pedi. Nada mais nada menos.

As principais teclas da coluna usadas aqui são %Mem (para %Mem), PID (para PID), UID (para UID), Comm (para comando). PS suporta muitas palavras -chave. Você pode encontrar a lista inteira na página do homem de PS.

Basta abrir a página do homem de PS com o seguinte comando e navegar para o Especificadores de formato padrão seção como mostrado na captura de tela abaixo.

$ MAN PS

Se você deseja exibir colunas adicionais junto com o conjunto padrão de colunas, você pode usar o -O opção para especificar as colunas que você deseja ver.

Por exemplo,

$ ps -ef -o %cpu

Como você pode ver, eu adicionei %CPU e %Mem coluna junto com as colunas padrão de ps -ef comando.

Classificação de saída do comando ps:

Você também pode classificar a saída de PS de acordo com qualquer coluna ou colunas específicas. Você pode classificar a saída de PS na ordem ascendente ou descendente, dependendo da sua exigência.

Para classificar a saída do PS usando qualquer coluna única, você pode usar o PS da seguinte forma:

$ ps -ef - -sort = (+| -) column_code

Algum exemplo vai deixar mais claro.

Digamos que você deseja classificar os processos, dependendo de quanto tempo o processo está sendo executado em ordem crescente. Você pode executar o PS da seguinte maneira:

$ ps -ef - -sort =+tempo

Ou

$ ps -ef - -sort = tempo

OBSERVAÇÃO: O padrão está classificando em ordem crescente. Então você pode omitir o + Assine se você quiser.

Como você pode ver, a saída é classificada na ordem ascendente pelo TEMPO coluna.

Mais uma vez, digamos, você quer classificar os processos, dependendo de quanto tempo o processo está sendo executado na ordem decrescente. Então, o comando PS seria:

$ ps -ef - -sort = -Time

Como você pode ver, os processos que estão em execução por mais tempo são listados primeiro.

Se você deseja classificar por várias colunas, basta adicionar as colunas da seguinte forma:

$ ps -ef - -sort = time, -%mem,%cpu

Para onde ir a seguir?

Eu cobri o básico do comando ps. Agora, você deve saber mais sobre o comando PS da página do homem de PS.

Você pode acessar a página do homem do PS da seguinte maneira,

$ MAN PS

Por exemplo, você pode encontrar um processo específico se souber que é PID usando o PS da seguinte forma:

$ ps -o %mem, %cpu -p 2060

OBSERVAÇÃO: Aqui, 2060 é o pid do processo.

Você também pode procurar processos de propriedade de usuário ou grupo específico etc.

Por exemplo, para encontrar todos os processos de execução do seu usuário de login, execute o PS da seguinte maneira:

$ ps -o usuário,%mem,%cpu -u $ (whoami)

OBSERVAÇÃO: Você pode substituir o $ (whoami) por qualquer nome de usuário que desejar listar processos em execução como o usuário.

Então, é assim que você usa o comando ps para encontrar processos de execução no Linux. Obrigado por ler este artigo.