将日期从crontab传递给shell脚本

时间:2013-09-13 16:45:44

标签: shell cron ubuntu-12.04 crontab

假设我有以下名为test.sh的shell脚本。

#!/bin/bash

echo $1 $2

我的crontab上有以下命令。

date=`date --date="next day" +"%Y-%m-%d"`
40 12 * * * ~/test.sh 1 $date

我收到的电子邮件如下。

1 `date

为什么test.sh第二天没有响应?当我将$ date传递给命令行时,它将打印出我想要的内容,如下所示。

./test.sh 1 $date
1 2013-09-13

为什么它不同,我如何指示crontab第二天进入test.sh?

1 个答案:

答案 0 :(得分:0)

我试过了,在Fedora 18上它对我来说很好。

你可以尝试几种选择:

date=$(date --date="next day" +"%Y-%m-%d")
40 12 * * * ~/test.sh 1 $date

或者

40 12 * * * ~/test.sh 1 `date --date="next day" +"%Y-%m-%d"`

或者

40 12 * * * ~/test.sh 1 $(date --date="next day" +"%Y-%m-%d")