我的做法:
!/bin/bash
Available=`df -k | sed -n 2p | awk '{print $4}'`
if [ $Available -eq 0 ];then
`echo '' > /home/wwwlogs/bes-req.log`
fi
Available=`df -k | sed -n 2p | awk '{print $4}'`
if [ $Available -eq 0 ];then
`echo '' > /home/wwwlogs/bes-req.log`
fi
参考资料:
#!/bin/bash
#取得每个分区的使用百分比(不要百分号)
percent=`df -k | grep -v Filesystem| awk
'{print int($5)}'
`
#循环判断分区使用率是否超过90%
for
each_one in $percent
do
#判断使用率是否超过90%
if
[ $each_one -ge 90 ];then
#如果超过90 则把使用情况发给mail_address mail_address换成你的邮件地址
df | mail -s
"Disk Critical"
mail_address
fi
done
1、打印文件的第一列(域) : awk '{print $1}' filename
2、打印文件的前两列(域) : awk '{print $1,$2}' filename
3、打印完第一列,然后打印第二列 : awk '{print $1 $2}' filename
4、打印文本文件的总行数 : awk 'END{print NR}' filename
5、打印文本第一行 :awk 'NR==1{print}' filename
6、打印文本第二行第一列 :sed -n "2, 1p" filename | awk 'print $1'
shell里面的赋值方法有两种,格式为
1) arg=`(命令)`
2) arg=$(命令)
因此,如果想要把某一文件的总行数赋值给变量nlines,可以表达为:
1) nlines=`(awk 'END{print NR}' filename)`
或者
2) nlines=$(awk 'END{print NR}' filename)