如何在crontab中传递日期参数

时间:2019-07-18 18:45:58

标签: shell cron

我具有以下脚本,该脚本创建日志文件名称中具有当前日期的日志文件:

#script name: abc.sh
curr_date=`date '+%Y-%m-%d'`
/user/scripts/abc.sh > /user/logs/test_$curr_date.log

我试图将crontab配置为每天调用abc.sh,如下所示:

16 14 * * * /user/scripts/abc.sh || mail -s "Errors" abcd@gmail.com < /user/logs/test_$curr_date.log

但是,crontab无法执行以上作业,因为它无法识别$curr_date

使用crontab时如何将$curr_date传递给脚本?

1 个答案:

答案 0 :(得分:0)

在shell中,它定义了一个在shell实例本地的变量:

curr_date=`...`

如果您希望将其应用于子流程:

export curr_date=`...`

然后它不仅显示为$curr_date,而且显示为它执行的任何程序的环境。