在shell中可以正常执行的命令,转移到cron中让其定时运行发现存在问题,即有错误提示,导致命令不执行。
d=`date -d “1 day ago” ‘+%Y-%m-%d’` && python3 -u regiondata.py –regionfile=region.id –date=$d
此命令问题在于d变量不能获取到,而在shell下执行则没有问题。网上搜索也有同样的问题:
https://unix.stackexchange.com/questions/29578/how-can-i-execute-date-inside-of-a-cron-tab-job
发现解决方案也比较简单,即在%符号前加上\转义,即可执行命令:
d=`date -d “1 day ago” ‘+\%Y-\%m-\%d’` && python3 -u regiondata.py –regionfile=region.id –date=$d
发表回复