【发布时间】:2014-02-14 12:14:32
【问题描述】:
当我使用这个时:
*/5 6-18 * * 1-6 [ "$(ls -A /DIR_WHERE_FILES_ARE_OR_NOT/)" ] &&
rsync -au /DIR_WHERE_FILES_ARE_OR_NOT/ /DIR_WHERE_FILES_SHOLD_GO; \
mv /DIR_WHERE_FILES_ARE_OR_NOT/* /SAVE_DIR/ ||
mail -s "DIR IS EMPTY" myemail@klkldkl.de <<< "message"
我收到两封邮件:
mv: cannot stat `/DIR_WHERE_FILES_ARE_OR_NOT/*': 没有这样的文件或 目录
和
“目录为空”
为什么?
【问题讨论】:
-
拥有一个具有这些条件的适当脚本并从 crontab 调用它怎么样?像这样,追踪和维护起来相当复杂。
-
谢谢! :) 现在我已将两个命令更改为 { } 但它没有帮助
-
仅当我退出 0 时;在这两个赞扬之后,我没有收到任何错误邮件,但是当文件在 DIR 中时,我收到一条错误消息:/bin/sh: -c: line 0: syntax error near unexpected token `}'
标签: bash shell if-statement crontab