00-01 09 * * * /home/flexsys/test.sh (the job will start at 9:00 and run upto 9:01)
Isso não é o que isso significa. Isso significa que o trabalho será executado às 9h e será executado novamente às 9:01. Cron não tem noção de matar empregos, apenas iniciá-los.
Quanto ao while
, você precisa executar o comando date
, localizar o número de minutos e testar se é ou não 00
. No meu sistema
date | cut -c12-19
retorna o tempo todo, 12:36:28. Você precisará descobrir como cut
apenas os minutos da saída date
em seu sistema.
Finalmente, você precisa do comando test
para determinar se esse valor é igual a 0 ou não.
Outra opção é que, se o seu script precisar ser executado por exatamente 60 segundos e você tiver que fazer algo a cada cinco segundos, basta executar sua ação um número específico de vezes e, em seguida, sair.
O último problema que você enfrenta é que o comando ls
na maioria dos sistemas Unix, se não em todos, não exibe o timestamp para o segundo. Você provavelmente precisará de uma ferramenta externa ou de um script perl
para verificar se o registro de data e hora do seu arquivo está sendo atualizado a cada cinco segundos. Eu não estou em posição de te ajudar com isso.