您的位置:首页 > 运维架构 > Shell

shell脚本

2019-09-07 15:35 1201 查看

1打印九九乘法口诀表

for i in `seq 9` ;do
for j in `seq 9` ;do
if [ $i -ge $j ];then
let sum=${i}*${j}
echo -e "${i}x${j}=$sum\t\c"
fi
done
echo
done

2.检查磁盘空间,一旦发现任何分区利用率高于80%,就发出警报

disk=`fdisk -l | egrep -o "^/dev/[[:alpha:]]+[0-9]"`
#disk=`lsblk | sed -rn "s/^├─([[:alpha:]]{3}[1-9]).*/\1/p"`
max_num=0
for name in `echo $disk`;do
#有可能是交换空间,df命令就没有显示。直接跳过
if ! df | egrep -o "^$name.*" &> /dev/null;then
continue
fi
#获取使用空间和inodes
num=`df | egrep -o "$name.*" | tr -s " " "%" | cut -d "%" -f 5`
Inodes_num=`df -i | egrep -o "$name.*" | tr -s " " "%" | cut -d "%" -f 5`
#使用空间和inodes大于80就发出警告。
if [ $num -ge 80 -o $Inodes_num -ge 80 ];then
if [ $num -gt $max_num ];then
max_num=$num
max_name=$name
max_Inodes_num=$Inodes_num
elif [ $num -eq $max_num ];then
max_equal_num=$num
max_equal_name=$name
max_equal_Inodes_num=$Inodes_num
fi
fi
done
#判断是否有超过80的
if [ $max_num -ne 0 ];then
let remaining=100-$max_num
let Inodes_remaining=100-$max_Inodes_num
#判断是否有两个分区使用量一样
if [ -z $max_equal_num ];then
wall The $max_name disk is about to run out, Only the remaining disk is
${remaining}% and Inodes${Inodes_remaining}%
else
wall The $max_name and $max_equal_name disk is about to run out, Only
the remaining disk is ${remaining}% and Inodes${Inodes_remaining}%
fi
fi
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: