分页: 1 / 1

求助

发表于 : 2013-12-31 12:31
诺克萨斯之手
为了方便系统管理员对磁盘分配的管理,请编写一段SHELL程序,当文件系统/home的占用空间量改变时给出相应的提示信息。
1) 小于50%时,提示“用户文件系统磁盘使用负荷量小”
2) 大于50%,小于90%时,提示“用户文件系统磁盘使用负荷量正常”
3) 大于90%时,提示“用户文件系统磁盘使用负荷量偏大”

现在我用的ubuntu 不会取出那个百分比,有会的 帮帮忙

Re: 求助

发表于 : 2013-12-31 16:56
kingkongmok

代码: 全选

kk@gentoo ~ $ df | perl -lane 'print $F[4] if /home/'
85%
kk@gentoo ~ $ df | perl -lane 'print int($F[4]) if /home/'
85

Re: 求助

发表于 : 2014-01-22 18:04
needle

代码: 全选

#!/bin/bash -

LANG=C
list=$(df | tail -n +2)
echo "$list" | while read i
do
	percent=$(echo "$i" | awk '{print $5}')
	percent=${percent%\%}
	if [ "${percent}" -lt 50 ]; then
		echo "$(echo "$i" | awk '{print $1}') <50%"
	elif [ "${percent}" -gt 50 ] && [ "${percent}" -lt 90 ]; then
		echo "$(echo "$i" | awk '{print $1}') >50% and <90%"
	elif [ "${percent}" -gt 90 ]; then
		echo "$(echo "$i" | awk '{print $1}') >90%"
	fi
done