假设我有以下名为test.sh的shell脚本。
#!/bin/bash
echo $1 $2
我的crontab上有以下命令。
date=`date --date="next day" +"%Y-%m-%d"`
40 12 * * * ~/test.sh 1 $date
我收到的电子邮件如下。
为什么test.sh第二天www.example.com没有回显?当我向命令行传递$date时,它会打印出我希望它打印的内容,如下所示。
./test.sh 1 $date
1 2013-09-13
为什么会不同?我如何指示crontab在第二天传递到test.sh?
2条答案
按热度按时间bt1cpqcv1#
问题是crontab条目中的
%
字符。为了使用%
,您必须将其转义。inb24sb22#
我试过了,对我来说效果很好,在Fedora 18上。
您可以尝试几种替代方案:
或者
或者