在我的主目录中非递归地查找超过1分钟的文件并更新其时间戳
* * * * * /usr/bin/find /home/me/ \( ! -name . -prune \) \( -type f -mmin +1 -name "*" \) -exec /usr/bin/touch {} \;
它的运行就像是来自shell的魅力而不是cronjob。
我尝试过这种修改:
* * * * * /usr/bin/find /home/me/ \( ! -name . -prune \) \( -type f -mmin +1 -name "*" \) -exec /usr/bin/touch {} \\;
和这一个:
* * * * * /usr/bin/find /home/me/ \( ! -name . -prune \) \( -type f -mmin +1 -name "*" \) -exec /usr/bin/touch -- {} \;
仍然没有快乐。
避免使用包装器 - 调用此查找命令的脚本。
有关如何使cronjob工作的任何想法和指示表示赞赏。谢谢。
答案 0 :(得分:1)
您应该收到有错误的邮件。我明白了:
sh: 0403-057 Syntax error at line 1 : `(' is not expected.
所以我把\加倍到了\\。这可能有效。我不清楚find命令正在做什么。
要调试这个,我会在命令前加上一个简单的" echo"然后将输出捕获到文件。实际上,在调试过程中,我会添加一个-print并将其捕获到一个文件以及另一个文件中的stderr,直到它正常工作。