Tente adicionar uma nova linha no final do seu crontab.
Desejo buscar conteúdo de um script PHP no meu servidor duas vezes por dia, alterando uma variável de consulta lang
para definir qual idioma queremos e salvar esse conteúdo em dois arquivos específicos de idioma. Este é o meu crontab:
*/15 * * * * ~root/apache.sh > /var/log/checkapache.log
10 0 * * * wget -O /path/to/file-sv.sql "http://mydomain.com/path/?lang=sv"
11 0 * * * wget -O /path/to/file-en.sql "http://mydomain.com/path/?lang=en"
O problema é que somente a primeira linha de comando do wget está sendo executada (ou, para ser preciso: o único arquivo que está sendo escrito é /path/to/file-sv.sql
). Se eu alternar a segunda e a terceira linha, /path/to/file-en.sql
será gravado. A primeira linha sempre é executada conforme o esperado, não importa onde esteja.
Eu tentei usar lynx -dump "http://mydomain.com/path/?lang=xx" > /path/to/file-xx.sql
sem sucesso; ainda apenas a primeira linha lynx foi executada com sucesso. Até mesmo misturar wget e lynx não mudou isso!
Ficando meio desesperado! Estou esquecendo de algo? Existem milhares de artigos no crontab (combinado com) wget ou lynx, mas todos parecem abranger configurações básicas e sintaxe. Alguém tem uma pista do que estou fazendo errado?
Obrigado,
Alexandre
Há algo sobre o texto errado. Edite seu crontab no vim e mostre os personagens invisíveis.
:set invlist
Você deve poder ver e corrigi-lo.
Tente adicionar o redirecionamento, para depurar o crontab (ou ler o correio raiz):
11 0 * * * wget -O /path/to/file-en.sql "http://mydomain.com/path/?lang=en" > /tmp/crontab_ouptput 2> /tmp/crontab_error
Execute também "wget -O /path/to/file-en.sql" link "'do console .
Use também 'crontab -e' para validação de novo crontab.
Além disso, tente excluir a linha de trabalho e redigite-a do teclado.
Copie o comando corntab e execute:
crontab -l | crontab -