Encerrar Processos duplicados [RESOLVIDO]

1. Encerrar Processos duplicados [RESOLVIDO]

Felipe Tomm
felipetomm

(usa Ubuntu)

Enviado em 29/03/2014 - 11:30h

Buenas..

Preciso montar um script que procure por um determinado processo e veja se o mesmo está rodando mais que uma vez, para então encerrá-lo.

Encontrei alguns scripts que pedem para voce informar o processo a ser parado, e então encerra os processos com tal nome.
Pensei então em adaptar um desses scripts, criando uma variavel contadora (cont), armazenando a quantidade de processos iguais, por exemplo:

* ltsp 15320 0.3 0.4 44860 12464 ? S 10:12 0:00 leafpad /home/ltsp/Ãrea de Trabalho/arquivo-1
* ltsp 15320 0.3 0.4 44860 12464 ? S 10:12 0:00 leafpad /home/ltsp/Ãrea de Trabalho/arquivo-2

O script entraria em um if e teria que testar a variável, "if cont => 2 then -comando" "else exit/quit".
Porém, nao sei como posso armazenar este valor retornado por um ps -aux | grep "processo".

Alguém teria uma sugestão?

Obrigado!




  


2. Solução

Felipe Tomm
felipetomm

(usa Ubuntu)

Enviado em 07/11/2014 - 16:53h

Depois de um bom tempo, retornei para concluir este problema.

Ainda não sei muito em shell, portanto o que eu fiz foi somente para quebrar o galho.

Caso alguem tenha correções, críticas ou dicas para melhorar este script, sinta-se à vontade.

Segue script:

#!/bin/bash

#Data para gravar no log
DATA=`/bin/date +%d/%m/%Y-%H:%M:%S`

#Nome do processo a ser encerrado
PROCESSO[0]="openvpn"

#Numero de processos a serem verificados
NUM=1

#Arquivo de log
LOG=/var/log/kill-processos.log


##############
#Início Script

for ((i=0;i<${NUM};i++))
do
#Consulta a quantidade de processos
QTD=`ps aux | grep ${PROCESSO[$i]} | grep -v grep | wc -l`

if test ${QTD} -gt 1
then
echo "Inicio: $DATA" >> $LOG
echo "Existem ${QTD} processos!" >> $LOG
pkill -9 ${PROCESSO[$i]} >> $LOG 2>&1
sleep 10
/etc/init.d/${PROCESSO[$i]} start >> $LOG
FIM=`/bin/date +%d/%m/%Y-%H:%M:%S`
echo "Fim: $FIM" >> $LOG
echo "" >> $LOG
fi
done


#Fim Script
###########

Obrigado!!






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts