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: 57.104 ]
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
Fazer backup de todas base de dados no PostgreSQL
Script Para Ajustar o Intevalo de Legendas 2
slacklibre - Seu Slackware 100% Livre
KDE Plasma - porque pode ser a melhor opção de interface gráfica
Gentoo: detectando impressoras de rede e como fixar uma impressora por IP
Como o GNOME conseguiu o feito de ser preterido por outras interfaces gráficas
Por que sua empresa precisa de uma PKI (e como automatizar EMISSÕES de certificados via Web API)
Instalando NoMachine no Gentoo com Systemd (acesso Remoto em LAN)
Instalar Linux em notebook Sony Vaio VPCEG13EB (13)
Vou destruir sua infância:) (7)
Interface gráfica com problema (0)









