Isso não se aplica aos cabeçalhos das colunas que se misturam com a saída, mas é fácil lembrar na linha de comando e é uma maneira aceitável de fazer o que você deseja ao visualizar manualmente esse tipo de saída.
Exemplo
root 1791 0.0 0.0 4140 536 tty2 Ss+ 07:04 0:00 /sbin/mingetty /dev/tty2
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 996 0.0 0.0 0 0 ? S 07:04 0:01 [kdmflush]
root 982 0.0 0.0 0 0 ? S 07:04 0:00 [kvm-irqfd-clean]
Mais dicas
Uma dica adicional seria canalizar toda a saída para outro comando, como less. Isso permite que você observe as informações de uma página por vez e também use as teclas de seta e as teclas de página para cima / para baixo para rolar para frente e para trás na saída.
$ ps aux | sort -rn -k 5,6 | less
Se sua saída estiver muito alta, você também poderá utilizar a -Sopção para menos, o que forçará toda a saída a permanecer em uma única linha. Você pode usar as teclas de seta para mover para a esquerda / direita / para cima / para baixo e ver tudo.
$ ps aux | sort -rn -k 5,6 | less -S
Classificando dentro de ps
Certas versões do psfornecem a capacidade de usar --sort. Essa opção pode usar chaves prefixadas com a +ou a -para indicar a ordem de classificação ... menos para o maior ou melhor para o menos.
Exemplos
vsz, -rss
$ ps aux --sort=vsz,-rss | head -5
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 2 0.0 0.0 0 0 ? S 07:03 0:00 [kthreadd]
root 3 0.0 0.0 0 0 ? S 07:03 0:00 [ksoftirqd/0]
root 4 0.0 0.0 0 0 ? S 07:03 0:01 [migration/0]
root 5 0.0 0.0 0 0 ? S 07:03 0:00 [watchdog/0]
+ vsz, + rss
$ ps aux --sort=+vsz,+rss | head -5
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 2 0.0 0.0 0 0 ? S 07:03 0:00 [kthreadd]
root 3 0.0 0.0 0 0 ? S 07:03 0:00 [ksoftirqd/0]
root 4 0.0 0.0 0 0 ? S 07:03 0:01 [migration/0]
root 5 0.0 0.0 0 0 ? S 07:03 0:00 [watchdog/0]
será pssempre de saída as colunas da maneira que você espera sortpara ver / processá-los?
Felipe Alvarez
Depende de qual versão do ps
slm
2
A ... | lessé um bom conselho, mas às vezes seu processo tem uma linha de comando enorme e atrapalha a saída. Nesses casos, ... | less -Sfunciona melhor.
perder
@waste - boa dica, lembre-se de que -Strunca e, portanto, você pode perder parte do que deseja ver, mas, caso contrário, é um bom conselho se estiver interessado apenas nas colunas da esquerda.
slm
@ SLM Não tenho certeza de que é o caso less -S. Quando você fecha a lessvista, tudo desaparece, mas enquanto estiver na vista, você pode rolar na vertical, mas também na horizontal. Copiar pode ser difícil, no entanto.
waste
6
Mesmo se o ps não refletir a memória real usada, este comando é bastante útil.
Como totalizar a memória usada pelo nome do processo:
Às vezes, mesmo observando os maiores processos isolados, ainda há muita memória usada inexplicada. Para verificar se existem muitos dos mesmos processos menores usando a memória, você pode usar um comando como o seguinte, que usa o awk para resumir a memória total usada por processos com o mesmo nome:
ps -e -orss=,args= |awk '{print $1 " " $2 }'| awk '{tot[$2]+=$1;count[$2]++} END {for (i in tot) {print tot[i],i,count[i]}}' | sort -n
ps
--sort
estão aqui: alvinalexander.com/linux/…Respostas:
Use o seguinte comando:
Verifique aqui para mais uso de memória de processo do Linux
fonte
head
comops aux --sort -rss | head -n15
ps: illegal option -- -
ps aux --sort=rss
:?ps aux | sort -rn -k 6
Um método rápido e sujo é apenas canalizar a saída
ps aux
para osort
comando:Exemplo
Isso não se aplica aos cabeçalhos das colunas que se misturam com a saída, mas é fácil lembrar na linha de comando e é uma maneira aceitável de fazer o que você deseja ao visualizar manualmente esse tipo de saída.
Exemplo
Mais dicas
Uma dica adicional seria canalizar toda a saída para outro comando, como
less
. Isso permite que você observe as informações de uma página por vez e também use as teclas de seta e as teclas de página para cima / para baixo para rolar para frente e para trás na saída.Se sua saída estiver muito alta, você também poderá utilizar a
-S
opção para menos, o que forçará toda a saída a permanecer em uma única linha. Você pode usar as teclas de seta para mover para a esquerda / direita / para cima / para baixo e ver tudo.Classificando dentro de ps
Certas versões do
ps
fornecem a capacidade de usar--sort
. Essa opção pode usar chaves prefixadas com a+
ou a-
para indicar a ordem de classificação ... menos para o maior ou melhor para o menos.Exemplos
vsz, -rss
+ vsz, + rss
-vsz, -rss
fonte
ps
sempre de saída as colunas da maneira que você esperasort
para ver / processá-los?... | less
é um bom conselho, mas às vezes seu processo tem uma linha de comando enorme e atrapalha a saída. Nesses casos,... | less -S
funciona melhor.-S
trunca e, portanto, você pode perder parte do que deseja ver, mas, caso contrário, é um bom conselho se estiver interessado apenas nas colunas da esquerda.less -S
. Quando você fecha aless
vista, tudo desaparece, mas enquanto estiver na vista, você pode rolar na vertical, mas também na horizontal. Copiar pode ser difícil, no entanto.Mesmo se o ps não refletir a memória real usada, este comando é bastante útil.
fonte
ps aux --sort -rss é legal:
mas se você quiser ver os usos de memória e CPU por aplicativo (agrupados por comandos):
código:
fonte
Como alternativa aos argumentos do estilo BSD mostrados nas outras respostas, pode-se usar (pelo menos usando procps, fornecido pelo Debian e Ubuntu):
fonte
maneira simples é instalar o htop
em que você pode classificar o processo com base em PID, CPU percentual, MEM
Mais sofisticado
fonte
top
comandoShift + F
para classificar com base no campo (consulte o menu completo abaixo)n
para classificar com base no uso da memóriafonte
Como totalizar a memória usada pelo nome do processo:
Às vezes, mesmo observando os maiores processos isolados, ainda há muita memória usada inexplicada. Para verificar se existem muitos dos mesmos processos menores usando a memória, você pode usar um comando como o seguinte, que usa o awk para resumir a memória total usada por processos com o mesmo nome:
por exemplo, saída
fonte