【发布时间】:2014-06-07 10:09:46
【问题描述】:
我在 RHEL 6 机器上有以下用户 crontab 条目(敏感值已被替换):
MAILTO=cron-errors@organisation.com
0 5 * * * ~/bin/app_state.sh host-arg 9200 > ~/state/app-state-$(hostname)-$(date +%F).json
在/var/log/cron 中产生此条目:
Apr 23 05:00:08 host CROND[13901]: (dbjobs) CMD (~/bin/app_state.sh host-arg 9200 > ~/state/app-state-$(hostname)-$(date +)
但没有文件。
将语句更改为:
43 5 * * * ~/bin/app_state.sh host-arg 9200 > ~/state/app-state-static.json
我得到了一个更好的日志条目,该文件是在~/state/app-state-static.json创建的
我确信不逃避+%F 存在一些问题,但我终其一生都无法找到应该如何逃避它的细节。我可以将文件名生成包装在另一个 shell 脚本中,但这对于寻找文件的人来说更容易阅读。
【问题讨论】:
-
你有没有尝试像
date +\%F一样逃避它 -
顺便说一句,这个问题在另一个网站上会更合适,例如,superuser.com 或 unix.stackexchange.com(因此关闭请求)。
-
记录在 crontab(5) 手册页中。
-
+\%F成功了。我会再次询问 unix 堆栈交换,以便答案可以记录在案,但有没有一种干净的方法可以在这里关闭它? -
既然您已经有了答案,那么在另一个网站上询问它是没有用的(尤其是这可能是一个常见问题解答,因此您的问题可能会被标记为重复)。让一切保持原样!繁荣会告诉我们。