Eu não tenho previlage para usar crontab -e para executar o meu script. Existe outra maneira de executar periodicamente meu script? Basicamente eu preciso executá-lo uma vez por semana.
0
Se ativado e instalado, você pode usar o at
comando. No entanto, é uma única vez agendamento .... você teria que executar um novo at
comando dentro da coisa que você queria reagendar.
Confira as man
páginas para ajuda no at
comando.
Mas lembre-se, nem sempre é instalado / habilitado em todos os sistemas Linux / UNIX.
cron
pode não ser capaz de executarat
também.A verdadeira resposta para isso é entrar em contato com o seu administrador de sistemas de vizinhança amigável, explicar seu problema e pedir que eles ativem o acesso do cron para você. Você deve explicar como seu programa é executado, seus requisitos de recursos e geralmente fazer uma promessa de que você não prejudicará o sistema se você obtiver privs de acesso ao cron.
fonte
Se você não pode / não quer manter um terminal aberto, você pode executá-lo no GNU Screen / tmux ou com o
nohup
.Exemplos:
ou
Nota: estes comandos serão executados
mycommand
pela primeira vez após uma semana e depois periodicamente, não diretamente. Mude de acordo com a preferência.Consulte a documentação dos projetos para obter mais informações sobre como anexar / desanexar sessões.
(
7d
é específico do GNU, creio eu. Basta colocar604800
lá em vez disso, se asleep
versão só suporta segundos.)fonte
Outra abordagem seria ter um cronjob rodando em uma máquina diferente, que usa
ssh
para executar um determinado comando no servidor de destino. Se você configurar o login baseado em chave, isso será fácil.Basta configurar um cronjob em outra máquina que pareça, por exemplo,
Com a exceção do servidor remoto estar offline no tempo de execução, isso seria confiável em relação a reinicializações remotas do servidor e outras coisas.
fonte