Filtrando processos facilmente com psaux ( ps aux + grep + wc -l)
Publicado por Everton Pereira Santos 29/06/2009 (última atualização em 21/09/2009)
[ Hits: 55.917 ]
Download psaux2.sh (versão 2)
O ps é uma ferramente essencial e corriqueira, e já usamos quase que automaticamente com
o grep, só que somos limitados a filtrar um processo por vez, por exemplo para ver os
processos do mysql, httpd e snmp:
$ ps aux | grep mysql; ps aux | grep httpd; ps aux | grep snmp
# O uso do ; é porque roquei 3 comandos numa mesma linha
Então escrevi esse script para facilitar e ganhar tempo, que é algo que nunca temos. Então
para ver os mesmo processos de cima ficaria assim:
$psaux mysql httpd snmp
Versão 2 - Enviado por Everton Pereira Santos em 21/09/2009
Changelog: No script anterior havia um problema, pois eu uso o parâmetro "ps aux | grep -v" grep para que não mostre a linha do próprio comando executado, então, se precisasse verificar os processos do ngrep por exemplo, ele ignorava.
#!/bin/bash #=============================================== # # ## Introdução ## # # Script para para facilitar na hora de filtrar a saída do comando # # "ps", pois, não é necessário utilizar " | grep filtro_desejado " # # e também por permitir que mais de um programa seja filtrado por vez e # # até exibir o total de processos. # # ## Uso ## # # Por exemplo filtrar os processos do mysql e httpd seria assim # # $ ps aux | grep mysql ; ps aux | grep http, e agora apenas # # $ psaux mysql httpd # # ## Sugestão ## # # adicione o script no diretório /usr/bin para seje carregado no path de # # todos os usuários # # Everton - everton_spd@yahoo.com.br # #=============================================== # if test -z "$1" ;then echo -e "\n\t\t{FONTE}33[1;32;40mTODOS OS PROCESSOS{FONTE}33[0m"; ps aux | grep -v awk | \ awk '{printf "%6s", $1} {printf "%9s " ,$2} {printf(substr($0,65,300))} {printf "\n"}' echo -e "{FONTE}33[1;29;40m`ps aux | wc -l` procs{FONTE}33[0m" else GR='grep -v 'grep'' PS='grep -v 'psaux'' for ii in $@;do echo -e "\n\t\t{FONTE}33[1;32;40m`echo $ii | tr '[a-z]' '[A-Z]'`{FONTE}33[0m"; ps aux | fgrep $ii | $GR | $PS | \ awk '{printf "%6s", $1} {printf "%9s " ,$2} {printf(substr($0,65,300))} {printf "\n"}' echo -e "{FONTE}33[1;29;40m`ps aux | fgrep $ii | $GR | $PS | wc -l` procs{FONTE}33[0m" done fi
instalado automatico do nagio 3.3.1 no debian 6
Limpa comentários e linhas em branco nos arquivos de configuração (.conf)
Verifica quais ports necessitam de atualização
Enviar mensagem ao usuário trabalhando com as opções do php.ini
Meu Fork do Plugin de Integração do CVS para o KDevelop
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Compartilhamento de Rede com samba em modo Público/Anônimo de forma simples, rápido e fácil
Cups: Mapear/listar todas as impressoras de outro Servidor CUPS de forma rápida e fácil
Criando uma VPC na AWS via CLI
Arch Linux - Guia para Iniciantes (2)
Problemas ao instalar o PHP (11)
Tem como instalar o gerenciador AMD Adrenalin no Ubuntu 24.04? (15)
Tenho dois Link's ( IP VÁLIDOS ), estou tentando fazer o failover... (0)