daniel.uramg
(usa Outra)
Enviado em 18/08/2012 - 09:20h
rai3mb escreveu:
Veja que no inicio do seu script a menos que "$TMP_PID" tenha conteúdo ele não será executado, e como essa variável vai ter conteúdo dentro do contexto do CRON???
Para resolver seu problema pode procurar o PID do seu script usando o
ps -C
Veja
ps -C piano_shell.sh
PID TTY TIME CMD
3981 pts/0 00:00:00 piano_shell.sh
Ou seja, tenho um piano_shell.sh sendo executado ai fica fácil validar no if
Exemplo
if ! ps -C piano_shell.sh >/dev/null
then
# seu codigo
fi
quando executo ps -C script.sh retorna todo os processos, acho que o PS da minha distribuição não tem essa opção..
ontem acho que encontrei o problema, no comando [ ! -z "`ps | grep $PID`" ] não estava sendo nulo pois aparecia o processo do grep, então coloquei um "grep -v grep"
if [ ! -z "`ps | grep $PID | grep -v grep`" ]; then
parece ter resolvido o problema, vou ficar verificando o dia todo pra ver se não acontece denovo