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: 54.922 ]

Download psaux

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ões atualizadas deste script

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.

Download psaux2.sh


Esconder código-fonte

#!/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

Scripts recomendados

Limpando Cache Squid

IPtables

Knife System 3.5

Cadastrando usuários para email no Slackware de forma mais simples

Gerador de PPP para USB (Palm OS e Pocket PC)


  

Comentários
[1] Comentário enviado por evertton_ps em 29/06/2009 - 14:37h

Atenção, aconteceu algum problema na hora de eu salvar o
"CÓDIGO FONTE" do script, além de desconfigurado, o código também foi alterado, e portanto ele não vai funcionar, caso queira, baixei o script para conferirem.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts