下面是一个检测日志文件(catalina.out)大小的脚本:
#!/bin/bash #Author:Chris Chan #Written for check catalina.out size=$(du -m catalina.out| awk '{print $1}') echo catalina.out的大小是:$size if [ $size -gt 19000 ] then rm -rf catalina.out echo "警告,测试环境cms的catalina.out的大小已经超过18.5G,已经被删除。" | mail -s "Warning" chenx1242@163.com else exit fi
新的知识点!
用shell发邮件的方法很简单,格式如下:
echo "邮件内容" |mail -s "邮件标题" 目标邮箱地址
但是有的时候可能会报错,比如这样的现象:
遇到这样的现象不要慌,其实邮件已经发送成功了,但是之所以会有这样的报错,原因就是当前mail服务不支持ipv6,那么我们先#vim /etc/postfix/main.cf,把里面的inet_protocols = all 修改为 inet_protocols = ipv4,然后#/etc/init.d/postfix restart,就好了。
如果你觉得邮件内容需要更多一些,我们可以使用这样的方法:
mail -s "邮件标题" 目标邮件地址 (输入回车) "邮件内容1" "邮件内容2"
ctrl +d 就是把邮件发出。
效果如图:
但是要注意!这种方法发送163和新浪的邮箱是可以的,发送qq邮箱会被默认转移到垃圾邮件里去,需要手动信任一下。
如果有的时候,系统则有这样的报错:“ send-mail: fatal: parameter inet_interfaces: no local interface found for ::1”。
那么就去#vim /etc/postfix/main.cf,把“inet_interfaces = localhost”注释,把“inet_interfaces = all”解开注释:
inet_interfaces = all #inet_interfaces = $myhostname #inet_interfaces = $myhostname, localhost #inet_interfaces = localhost # Enable IPv4, and IPv6 if supported inet_protocols = all
然后重启一下postfix,#service postfix start即可。
转载于:https://blog.51cto.com/chenx1242/1897416