shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [shell-script] Ajuda quanto ao uso do ps <arg> | grep [arg]


From: César Vianna
Subject: Re: [shell-script] Ajuda quanto ao uso do ps <arg> | grep [arg]
Date: Tue, 6 May 2008 09:25:16 -0300

Você pode colocar um espaço antes e depois do PID. " 58 " não casará "1058"



2008/5/6 Sergio <address@hidden>:

>   Pessoal, olá a todos.
>
> Segue parte do script que tenho e que falha, não por sintax, mas sim
> por eficiencia e exatidão no kill do processo.
>
> ######################################################################
> ARQ=$(ls UNIAO_GeraExpFull_Un01*) #DIRETORIO DE LOCK
> Definindo procedimentos para Abortar o script"
> LOG + "Analisando o Arquivo: ${ARQ}"
> wd_PID=`echo ${ARQ} | awk -F. '{print $3}'`
> LOG + "PID do Arquivo ${ARQ} e ${wd_PID}" 1
> wd_PROCESSO=`ps -ef | grep ${wd_PID} | grep -v grep | wc -l`
> LOG 2 "Finalizando os processos em ordem inversa, dos processos
> FILHOS ate chegar no processo PAI"
> for MATA_PROCESSO in $(ps -ef | grep ${wd_PID} | grep -v grep | awk -
> F" " '{print $2}' | sort -r)
> do
> gABORT="S"
> kill -15 ${MATA_PROCESSO}
> gABORT="N"
> LOG + "Processo: ${MATA_PROCESSO} Encerrado"
> done
>
> ######################################################################
> O que ocorre de errado de vez em quando é que ao capturar com ps -ef
> para popular a variavel wd_PROCESSO, ele pega outros pids que nao tem
> nada a ver com o processo em questao. Por exemplo, se o pid do
> processo for 58, com o comando em questão, alem do 58 ele pega o
> 1058.
> Dai, ao tentar matar o processo na parte onde tem o for
> MATA_PROCESSO, ele falha... (ainda bem que falha) pois estaria
> tentando matar um processo que nao tem nada a ver...
>
> A pergunta é : como restringir de forma que o pid capturado pelo ps -
> ef | grep seja mesmo o 58 e nao 1058 ?
>
> Tentei restringir , fazendo com os os pids retornados seja os que o
> usuario que executou o script executou, de forma que os pids seria
> pelo menos os do usuario que executa o script, mas mesmo assim fica
> falho o script. (ps -fu user).
>
> Creio que seja uma coisa bem simples...
>
> Valeu...
>
> SDS
>
> Sergio
>
>  
>


[As partes desta mensagem que não continham texto foram removidas]



reply via email to

[Prev in Thread] Current Thread [Next in Thread]