crontab条件,如果文件大小超过5000K则发送电子邮件
我有这个不完整的命令:
find /var/www/vhosts/domain/folder/ -name '*.flv' -size +5000k && /bin/mail -s "The file is available!" "[email protected]" > /dev/null
我无法插入条件,如果文件超过 5000k,则必须发送邮件,否则不发送邮件。
谢谢。
I have this incomplete command:
find /var/www/vhosts/domain/folder/ -name '*.flv' -size +5000k && /bin/mail -s "The file is available!" "[email protected]" > /dev/null
I'm not able to insert a conditional, if the file is more than 5000k it must send mail, else no.
Thank you.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
find
始终返回退出代码 0,除非出现问题。因此,您必须使用其他方法来生成可与&&
一起使用的适当退出代码 (!=0)。我建议使用grep
,例如:如果 grep 在
find
的输出中检测到包含字符串flv
的行,则返回 0,否则返回 1。mail
命令仅在grep
的退出代码 0 时执行。find
always returns an exit code of 0 except if there was something wrong. Therefore you have to use something else to generate an appropriate exit code (!=0) that can be used with&&
. I would suggestgrep
, e.g.:If grep detects a line containing the string
flv
in the output offind
it returns 0, otherwise 1. Themail
command will only be executed on exit code 0 ofgrep
.