diff脚本命令到邮件

如果在/newchanes.list中发现任何更改,是否可以添加一个命令来发送此邮件。 邮件附带(/变化)说,它发现的变化,如果没有,那么主题行会说:没有chanages已经作出。

#!/bin/bash if [ ! -f "/suid.old" ]; then # note: ! find / -perm -4000 -o -perm -2000 -ls > /suid.old # note: dash before ls; slash before file else find / -perm 4000 -o -perm -2000 -ls > /suid.new diff /suid.old /suid.new > /newchanges.list mv /suid.new /suid.old # could be handy fi 

你可以做这样的事情:

 ... diff /suid.old /suid.new > /newchanges.list if [ $? -eq 0 ] then mail -s "No changed made" <[email protected]> else mail -s "Changes Found" <[email protected]> < /newchanges.list fi ... 

diff退出代码为0(至less在我的Ubuntu的盒子,你应该validation你自己的系统退出代码),如果没有发现变化。

您可以在testing中使用-s开关,查看结果文件是否为空,如果不是电子邮件。 可能是该方法的一个警告,虽然…

  -s FILE FILE exists and has a size greater than zero