Crontab: Por que não executa script?

0

Então no passado eu fiz um simples crontab de desligamento, e foi isso. Ultimamente, quero fazer algo um pouco mais complexo, então estou tentando fazer com que ele execute um script. No momento, eu reduzi a um superteste de teste, chamado test.sh. Este script apenas ecoa algo para o console e para um arquivo.

No entanto, não importa quantas vezes eu tente, não parece estar funcionando. Aqui está o script:

#!/bin/bash

echo "Console foo!!!"
echo "Foo!!!" > ~/foo22.txt

E aqui está o meu crontab:

08 18 * * * /home/craig/Documents/Scripts/test.sh

Eu verifiquei o caminho para o arquivo em dobro e em triplo, é bom. O script é executável, posso executá-lo manualmente a partir do terminal e ele é executado.

Eu estou fazendo isso no root crontab, ou seja, "sudo crontab -e", se isso ajuda em tudo.

    
por user2223059 03.05.2016 / 00:10

1 resposta

2

Aplicativos executados a partir de cron não possuem "console". Ambos stdout e stderr são capturados e enviados por e-mail para a conta do usuário local quando a tarefa é concluída.

No seu caso, o script é executado como root, então o resultado será enviado no e-mail do root. Quanto à gravação no arquivo, o ~ representa o diretório base do usuário raiz, ou seja, /root , de modo que é necessário procurar o arquivo de saída.

    
por 03.05.2016 / 00:25

Tags