como gerenciar processos do terminal linux: 10 comandos que você precisa saber

O terminal Linux tem uma série de comandos úteis que podem exibir os processos em execução, matá-los, e alterar seu nível de prioridade. Este post lista os comandos, tradicionais clássicos, bem como alguns mais úteis, mais modernos.

Muitos dos comandos aqui executar uma única função e pode ser combinado – que é a filosofia Unix de projetar programas. Outros programas, como htop, fornecer uma interface amigável em cima dos comandos.

O comando top é a maneira tradicional de ver o uso de recursos do seu sistema e ver os processos que estão ocupando mais recursos do sistema. Top exibe uma lista de processos, com os que utilizam a mais CPU no topo.

Para sair superior ou htop, use o atalho de teclado Ctrl-C. Este atalho de teclado normalmente mata o processo atualmente em execução no terminal.

O comando htop é um top melhorada. Não é instalado por padrão na maioria das distribuições Linux – aqui está o comando você precisará instalá-lo no Ubuntu

sudo apt-get instalar htop

htop mostra a mesma informação com um layout mais fácil de entender. Ele também permite que você selecione os processos com as setas e executar ações, como matá-los ou mudar sua prioridade, com as teclas F.

Nós cobrimos htop em mais detalhes no passado.

O comando lista ps processos em execução. O seguinte comando lista todos os processos em execução no sistema

ps -A

Este pode ser muitos processos para ler de uma só vez, para que possa canalizar a saída através do comando less para percorrê-los no seu próprio ritmo

ps -A | Menos

Pressione q para sair quando estiver pronto.

Você também pode canalizar a saída através do grep para procurar um processo específico sem o uso de quaisquer outros comandos. O comando a seguir iria procurar o processo de Firefox

ps -A | grep firefox

O comando pstree é outra forma de visualização dos processos. Ele exibe-os em formato de árvore. Assim, por exemplo, o servidor X e ambiente gráfico parece sob o gerenciador de exibição que os gerou.

O comando kill pode matar um processo, dado o seu ID do processo. Você pode obter esta informação a partir das -A ps, top ou pgrep comandos.

kill PID

Tecnicamente falando, o comando kill pode enviar qualquer sinal para um processo. Você pode usar matar -kill ou kill -9 em vez de matar um processo teimoso.

Dado um termo de pesquisa, pgrep retorna os IDs de processo que combinem com ele. Por exemplo, você poderia usar o seguinte comando para encontrar PID do Firefox

pgrep firefox

Você também pode combinar este comando com kill para matar um processo específico. Usando pkill ou killall é mais simples, porém.

Os comandos pkill e killall pode matar um processo, dado o seu nome. Utilize um comando para matar Firefox

pkill firefox; killall firefox

Nós cobrimos pkill com mais profundidade no passado.

O comando renice muda o bom valor de um processo já em execução. O valor agradável determina que prioridade o processo é executado com. Um valor de -19 é prioridade muito elevada, enquanto que um valor de 19 é muito baixa prioridade. Um valor de 0 é a prioridade padrão.

O comando renice requer PID de um processo. O seguinte comando faz com que um processo de execução com uma prioridade muito baixa

renice 19 PID

Você pode usar o truque pgrep acima, com renice, também.

Se você estiver fazendo um processo de execução em uma prioridade maior, você vai exigir permissões de root. No Ubuntu, utilize sudo para esse

sudo renice -19 #

O comando xkill é uma maneira de matar facilmente programas gráficos. Executá-lo e seu cursor vai se transformar em um sinal x. Clique na janela de um programa para matar esse programa. Se você não quer matar um programa, você pode fazer fora do xkill clicando com o botão direito em seu lugar.

Você não tem que executar este comando de um terminal – você também pode pressionar Alt-F2, tipo xkill e pressione Enter para usá-lo a partir de um desktop gráfico.

Nós cobrimos xkill ligação a uma tecla de atalho para matar facilmente processos.

Você tem um comando favorito que não mencionamos aqui, ou outro truque para mostrar? Deixe um comentário e deixe-nos saber.

Excelente lista. Eu aprendi algumas coisas … como um longo tempo de usuário UNIX / Linux, alguns dos comandos parecem novo para mim e pode substituir alguns aliases que tive para 15+ anos.

Por exemplo, pgrep aparece para substituir isso; aliás psg = ‘-eaf ps | grep -v grep | grep $ * ‘

Com pgrep, você começa a pid, mas não permite que você verifique o resultado é realmente o processo que você deseja. Meu apelido usa as opções mais velhos, que podem funcionar melhor multi-plataforma – Eu sei que costumava trabalhar em 6 outras plataformas UNIX, supondo que você configurar o seu caminho para BSD, não sysv, versões dos comandos.

Bom artigo, obrigado! Recentemente, começou a usar o Ubuntu no meu netbook, e eu gosto disso. Seu artigo será útil para mim como eu aprender sobre Linux. Mantenha o bom trabalho.

Hmm. Devo ter perdido a parte sobre o pstree. Bom saber.

Sempre bom ter mais uma “cola” de comandos úteis. Amo o site pela maneira que eu visitá-lo diariamente. Continue com o ótimo trabalho.

Graças HTG, você sempre manter o processo de aprendizagem vai. Eu sabia que alguns, mas aprendi um monte também, será a instalação de HTOP quando eu chegar em casa. Eu tenho usado várias distribuições Linux por um par de anos e agora tentando obter mais em profundidade com alguns dos usos. O que eu tive problemas e não consegue descobrir e talvez este é o lugar principal a fazer é: como faço para iniciar um novo processo no Linux (BASH) de um segmento separado do shell que lançou.

Vou usar o Windows para desenhar a comparação porque essa é a função que eu estou tentando imitar em Bash. Fazer a suposição de que qualquer exe no Windows chamado Preciso já está incluído no caminho do sistema que estou tentando fazer. No Windows eu quero começar Firefox a partir da linha de comando, eu usaria

inicie o Firefox

Que iria lançar o Firefox a partir de um novo espaço de memória separado a partir da linha de comando do Windows. O que é que ‘iniciar’ comando em bash ou qualquer outro shell Linux para lançar um novo processo, mas não amarrar a casca até que o processo termina?

isto é rhythmbox “start”

Agradecemos antecipadamente, -. JP

JP -; você pode digitar; firefox; que inicia o programa em segundo plano.

Ou, inicie-o e, em seguida, digite Ctrl-Z seguido de “bg” para recuperar o console.

Raposa de fogo

bg

oi JP

Anexando um e comercial (&) para o comando é executado o trabalho em segundo plano.

rhythmbox

Eu não sabia “htop”. Obrigado pela dica! 🙂

Impressionante, obrigado tanto Alan & Willm

É bom saber sobre os Como gerenciar processos do Terminal Linux.

Abaixo está um pequeno script útil escrevi anos atrás, enquanto explora AWK.

#! / Bin / sh; ps -La | grep “$ 1” | awk ‘BEGIN {print “———–“} \; BEGIN {print “PID” “\ t” “PPID” “\ t” “NAME”} \; BEGIN {print “- ——— “} \; {print $ 4” \ t “$ 5” \ t “$ 14} \; END {print” ———– “}”

Tenho vindo a utilizar unix / linux para cerca de 16 anos agora, e eu ainda aprendeu algo novo a partir deste (pstree – Olá)

Obrigado!

Tudo isso é IIRC: você também pode sair superior pressionando q, ver os processos de um usuário específico com u nome de usuário (por exemplo u raiz ou u) e mover para cima e para baixo a lista com.

Já esteve com UNIX desde os dias de Berkley. Ainda aprendendo mais. Graças ao excelente artigo ….

Você só “precisa” conhecer 5 (talvez 6 com killall), os outros são apenas quer mais extravagantes (ou mais feios) versões do mesmo, ou não é realmente necessário.

ou seja, superior, mata; ps; fg; bg; (mais killall, e coisas como grep e |)

Também o material de controle de trabalho, ctrl-z, e, [número do trabalho] e% sintaxe para números de trabalho são bastante úteis para a gestão de processos de CLI.

Mais pessoas morreram na pandemia de gripe que varreu o mundo em 1918 (cerca de 500 milhões de pessoas foram infectadas com 50-100 milhões de mortes) do que na Primeira Guerra Mundial que o precedeu (um número estimado de 37 milhões de vítimas).