Crontab não executando o script python, sem erros, sem nada

1

Já gastou mais de 1h para tornar isso fácil e totalmente falhou: /

Não é possível encontrar por que esse python não está trabalhando no crontab enquanto ele funciona perfeitamente na linha de comando ...

Script é (bash):

#!/bin/bash

touch before_zzz_text.txt # to check if cron works at all 
ls > "before_zzz_text.txt" # just to check if I'm in the correct directory

/root/anaconda3/bin/python -V > pv.txt # this is empty! or a white char

touch after_zzz_text.txt # this works new file every minute

Desta forma, sei que ele é executado no cron (arquivos .txt criados a cada minuto - como o cron é executado a cada minuto).

No entanto pv.txt está vazio ... então parece que o script bash não está funcionando?

No final, quero que um script mais complicado seja executado no script bash, mas tentei descobrir por que ele não está funcionando, então, para simplificar, agora é "/ root / anaconda3 / bin / python -V '

    
por kkonrad 06.11.2017 / 23:51

1 resposta

3

Depois de um pouco de discussão (veja os comentários acima), parece que o problema básico é que python escreve seu texto de versão em stderr , não o esperado stdout , onde nada é escrito, daí o vazio arquivo.

Em geral, ao diagnosticar crontab de problemas, é uma boa ideia registrar erros e saída no mesmo arquivo ou em um arquivo diferente. Ao adicionar 2>&1 ao final da linha de invocação de python , o texto da versão apareceu em pv.txt :

/root/anaconda3/bin/python -V > pv.txt 2>&1
    
por 07.11.2017 / 01:04