Executar um comando em um determinado momento no cygwin

3

Estou escrevendo um script bash (.sh) para o cygwin. Eu quero executar um determinado comando em um horário específico.

Eu tentei o seguinte:

echo "test" | at 19:00

mas recebo o seguinte erro:

The AT command has been deprecated. Please use schtasks.exe instead.

Então, posso usar apenas a Tarefa Agendada no Windows para isso?

    
por l3win 12.04.2013 / 04:13

2 respostas

4

O comando at do Unix não está disponível no Cygwin. O Cygwin usou tradicionalmente o comando at do Windows, mas este foi substituído em favor de schtasks.exe .

Portanto, a resposta à sua pergunta é sim: você só pode usar a Tarefa Agendada no Windows para executar uma tarefa uma vez.

(Você pode usar cron e configurá-lo em uma data específica em um horário específico ... mas ele será repetido a cada ano, a menos que você remova a tarefa do crontab.); -)

    
por 02.09.2013 / 14:58
1

Você pode adicionar um trabalho cron.

Faça login no usuário a partir do qual você deseja executar o script bash.

Execute o comando crontab -e .

Agora, suponha que, se você quiser executar o script bash exatamente às 19:00, diariamente, será necessário adicionar uma linha como esta:

00 19 * * * /path/to/bash/script

Nota: Esse script deve ter um bit executável definido para esse usuário.

    
por 12.04.2013 / 06:53