Como executar o script de Bash recorrente em horários específicos?

2

Como eu configuraria um script para ser executado toda terça e quinta-feira às 11h50?

Eu tenho visto o comando at , mas não consigo conceber como usá-lo da maneira que preciso da sua man page.

    
por Shane 30.10.2014 / 05:22

1 resposta

4

at é excelente ferramenta para comandos únicos. Para executar um programa repetidamente nos mesmos momentos, a ferramenta certa é cron . Execute crontab -e . Vai abrir um editor. Adicione esta linha e salve o arquivo:

50 11 * * 2,4 /path/to/script

Isso funcionará /path/to/script toda terça e quinta-feira às 11h50. crontab executa programas em um ambiente limitado. Então, script pode precisar definir seu próprio PATH , etc.

Se a máquina tiver um servidor de e-mail configurado corretamente, qualquer saída de script será enviada por e-mail para o usuário que possui o arquivo crontab . Alternativamente, a saída será enviada para o endereço especificado pela variável MAILTO no arquivo crontab. Veja man 5 crontab para detalhes.

As cinco primeiras colunas da linha acima definem a hora em que o programa é executado. Seu significado está documentado em man 5 crontab para ser:

          field          allowed values
          -----          --------------
          minute         0-59
          hour           0-23
          day of month   1-31
          month          1-12 (or names, see below)
          day of week    0-7 (0 or 7 is Sun, or use names)
    
por 30.10.2014 / 05:45