Pular para o conteúdo

Criar Loop

Responder tópico
  • Denunciar
  • Indicar
01 02

1. Criar Loop

Enviado em 27/08/2013 - 13:17h

Um salve a todos,

Alguém poderia me ajudar, por favor, me mostrando como criar um loop para o que o seguinte código seja executado a cada 10 segundos?

#!/bin/sh
# Script para reinciar o o wvdial caso o ppp caia
#check-vivo.sh
#
ip add sh ppp0
case $? in
0) echo "com_ppp" ;
;;
*) echo "sem_ppp" ;
/usr/bin/wvdial ;
exit 0;
;;
esac


Grato,
Fábio

Responder tópico

2. Re: Criar Loop

Enviado em 27/08/2013 - 13:25h

Jogue o seu script no cron:


crontab -e
Inserindo a linha abaixo:


*/10 * * * * /caminho/seu/script.sh 2>&1 /dev/null
Ele vai rodá-lo de 10 em 10 segundos.

3. Re: Criar Loop

Enviado em 27/08/2013 - 13:28h

Não.. ai ele vai rodar de 10 em 10 minutos!

4. Re: Criar Loop

Enviado em 27/08/2013 - 13:37h

Carai... é verdade! Hehehhe! É o sono, kra, desconsidere. Se não me engano, tem um software q executa por segundo, mas não tou lembrado o nome dele. Se vc pesquisar vc acha.

5. Re: Criar Loop

Enviado em 27/08/2013 - 13:40h

Esquenta não... faz parte... obrigado!

6. Re: Criar Loop

Enviado em 27/08/2013 - 13:51h

fabiocs escreveu:

Esquenta não... faz parte... obrigado!
O crontab não aceita decimais, do tipo 0,16666666666666666666?

--
Cordialmente,
lcavalheiro - http://my.opera.com/lcavalheiro/blog/
93 93/93

7. Re: Criar Loop

Enviado em 27/08/2013 - 14:44h

Não.. não aceita!

8. Re: Criar Loop

Enviado em 27/08/2013 - 14:55h

Achei uma solução. Ex.:


#!/bin/sh
while [ 1 ]; do
comando
sleep 15
done
Vai rodar d 15 em 15 segundos.

9. Re: Criar Loop

Enviado em 27/08/2013 - 15:08h

Blz, eu fiz isso aqui

#!/bin/sh
while [ 1 ]; do
/usr/sbin/check-vivo.sh
sleep 10
done

Funcionou... porém o quando chamo o script ele me toma o prompt!
Colocando ele para inicializar no /etc/rc.local acontece a mesma coisa
Também tentei colocar o & mas nada de liberar o prompt!
Preciso descobrir agora como fazê-lo rodar em background!

Grato,
Fábio

10. Re: Criar Loop

Enviado em 27/08/2013 - 15:32h

Ponha assim e veja se resolve:


#!/bin/sh
while [ 1 ]; do
/usr/sbin/check-vivo.sh &
sleep 10
done

11. Re: Criar Loop

Enviado em 27/08/2013 - 16:02h

Não resolveu assim

#!/bin/sh
while [ 1 ]; do
/usr/sbin/check-vivo.sh &
sleep 10
done

e nem assim

#!/bin/sh
while [ 1 ]; do
/usr/sbin/check-vivo.sh 2>&1 /dev/null
sleep 10
done

12. Re: Criar Loop

Enviado em 27/08/2013 - 16:22h

Ponha, então, o & na frente do comando sleep.
01 02

Responder tópico

Responder tópico

Entre na sua conta para responder.

Fazer login para responder