求助

sh/bash/dash/ksh/zsh等Shell脚本
回复
诺克萨斯之手
帖子: 1
注册时间: 2013-12-31 12:29
系统: win7

求助

#1

帖子 诺克萨斯之手 » 2013-12-31 12:31

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

现在我用的ubuntu 不会取出那个百分比,有会的 帮帮忙
头像
kingkongmok
帖子: 340
注册时间: 2006-03-23 14:48

Re: 求助

#2

帖子 kingkongmok » 2013-12-31 16:56

代码: 全选

kk@gentoo ~ $ df | perl -lane 'print $F[4] if /home/'
85%
kk@gentoo ~ $ df | perl -lane 'print int($F[4]) if /home/'
85
头像
needle
帖子: 78
注册时间: 2009-12-01 13:34

Re: 求助

#3

帖子 needle » 2014-01-22 18:04

代码: 全选

#!/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

myshell^_^
xfce4.10最好用了……
舒适的滚轮升起焦点设计,大量快捷键,alt移动,糟糕的桌面图标……
珍爱生命,LFS 三思~
回复