Eu não tenho idéia do que você disse nos dois primeiros parágrafos, então eu não posso dizer se há uma solução melhor (meus instintos gritam que deveria haver).
Para executar um comando em intervalos de X segundos, há muitas opções, discutidas nesta pergunta sobre estouro de pilha e este Unix & amp; Linux pergunta .
Execução de comando um segundo após o comando anterior terminar
Simplificando, use um script como este:
#! /bin/bash
while sleep 1
do
# your commands
done
Execução de comando um segundo após o início do comando anterior
O mesmo que acima, mas você envia o comando para o segundo plano. Isso resultará em execuções de comandos sobrepostas se o comando demorar mais de 1 segundo para ser concluído.
#! /bin/bash
while sleep 1
do
(# your commands )&
done
Agora, para garantir que o script esteja sendo executado, use um trabalho do Upstart :
description "a good description"
start on runlevel [!016]
stop on runlevel [016]
respawn
exec /path/to/the/above/script
Salvar este é um arquivo .conf
em /etc/init
, como /etc/init/some-job.conf
. Agora você pode iniciar o script com:
service some-job start
A opção respawn
fará com que o Upstart reinicie o script se ele sair (não deveria).