利用shell 提取 LINUX系统监控相关信息 -2
2014-04-25 16:54
435 查看
6、物理硬盘使用率
harddisk-usage-rate.sh
#!/bin/bash
df -k|sed '/%/!{N;s/\n / /}'|awk '{print $2}' >kblocks.txt
KBLOCKNUM=`cat kblocks.txt|wc -l`
if [ "$KBLOCKNUM" -ge 2 ]
then
for ((i=2;i<=$KBLOCKNUM;i=i+1))
do
#echo "$i"
kblocks=`awk '{if(NR=='"$i"') print $0 }' ./kblocks.txt`
#echo "kblocks=$kblocks"
totalkblocks=$[$totalkblocks+$kblocks]
#echo "totalkblocks=$totalkblocks"
done
#echo "totalkblocks=$totalkblocks"
fi
df -k|sed '/%/!{N;s/\n / /}'|awk '{print $3}' >used.txt
USEDNUM=`cat used.txt|wc -l`
if [ "$USEDNUM" -ge 2 ]
then
for((i=2;i<=$USEDNUM;i=i+1))
do
used=`awk '{if(NR=='"$i"') print $0 }' ./used.txt`
totalused=$[$totalused+$used]
done
#echo "totalused=$totalused"
fi
Harddisk_Usage_Rate=`expr "scale=5; $totalused/$totalkblocks*100" |bc`
echo "HARDDISK-USAGE-RATE=`expr "sclae=3;$Harddisk_Usage_Rate/1"|bc `%"
rm -f kblocks.txt
rm -f used.txt
7、分区使用率
harddisk-filesystem-capacity.sh
#!/bin/bash
df -k|sed '/%/!{N;s/\n / /}'|awk '{print $1,$2}' >harddiskcapacity.txt
HARDDISKFILESYSTEMNUM=`cat harddiskcapacity.txt|wc -l`
if [ "$HARDDISKFILESYSTEMNUM" -ge 2 ]
then
for ((i=2;i<=$HARDDISKFILESYSTEMNUM;i=i+1))
do
filesystemname=`awk '{if(NR=='"$i"') print $1}' ./harddiskcapacity.txt`
filesystemcapacity=`awk '{if(NR=='"$i"') print $2}' ./harddiskcapacity.txt`
echo -n "$filesystemname"
echo -n "-capacity="
echo -n "$filesystemcapacity"
echo -n "k"
echo -n "="
echo -n `expr "scale=1;$filesystemcapacity/1024"|bc -l`
echo -n "MB"
echo -n "="
echo -n `expr "scale=1;$filesystemcapacity/1024/1024"|bc -l`
echo "GB"
done
fi
rm -f harddiskcapacity.txt
8、内存使用率
mem-usage-rate.sh
#!/bin/bash
MEMTOTAL=`cat /proc/meminfo|sed -n '1p'|awk '{print $2}'`
#echo "MEMTOTAL=$MEMTOTAL"
MEMFREE=`cat /proc/meminfo|sed -n '2p'|awk '{print $2}'`
#echo "MEMFREE=$MEMFREE"
MEMFREERATE=`expr "scale=3;$MEMFREE/$MEMTOTAL"|bc -l`
#echo $MEMFREERATE
MEMUSAGERATE=`expr 1-$MEMFREERATE|bc -l`
#echo "MemUsageRate=$MEMUSAGERATE"
echo "MemUsageRate=`expr "scale=1; 100-$MEMFREERATE*100/1"|bc -l`%"
9、内存总量
mem-total.sh
#!/bin/bash
sed -n '1p' /proc/meminfo|awk '{print $0}'
10、PPP地址
ppp-ip.sh
#!/bin/bash
PPPSTRING=`/sbin/ifconfig|grep "ppp. Link encap:Point-to-Point Protocol"`
if [ -n "$PPPSTRING" ]
then
PPPNUM=`/sbin/ifconfig|grep "ppp. Link encap:Point-to-Point Protocol"|wc -l`
if [ "$PPPNUM" -ge 1 ]
then
let pppi=$PPPNUM-1
for ((i=0;i<=$pppi;i++))
do
echo -n "ppp$i"
echo -n "-ipaddress="
echo `ifconfig ppp$i|grep "inet addr"|cut -f 2 -d ":"|cut -f 1 -d " "`
done
fi
fi
附录:可能可以参考的链接http://www.oschina.net/question/920274_152746
harddisk-usage-rate.sh
#!/bin/bash
df -k|sed '/%/!{N;s/\n / /}'|awk '{print $2}' >kblocks.txt
KBLOCKNUM=`cat kblocks.txt|wc -l`
if [ "$KBLOCKNUM" -ge 2 ]
then
for ((i=2;i<=$KBLOCKNUM;i=i+1))
do
#echo "$i"
kblocks=`awk '{if(NR=='"$i"') print $0 }' ./kblocks.txt`
#echo "kblocks=$kblocks"
totalkblocks=$[$totalkblocks+$kblocks]
#echo "totalkblocks=$totalkblocks"
done
#echo "totalkblocks=$totalkblocks"
fi
df -k|sed '/%/!{N;s/\n / /}'|awk '{print $3}' >used.txt
USEDNUM=`cat used.txt|wc -l`
if [ "$USEDNUM" -ge 2 ]
then
for((i=2;i<=$USEDNUM;i=i+1))
do
used=`awk '{if(NR=='"$i"') print $0 }' ./used.txt`
totalused=$[$totalused+$used]
done
#echo "totalused=$totalused"
fi
Harddisk_Usage_Rate=`expr "scale=5; $totalused/$totalkblocks*100" |bc`
echo "HARDDISK-USAGE-RATE=`expr "sclae=3;$Harddisk_Usage_Rate/1"|bc `%"
rm -f kblocks.txt
rm -f used.txt
7、分区使用率
harddisk-filesystem-capacity.sh
#!/bin/bash
df -k|sed '/%/!{N;s/\n / /}'|awk '{print $1,$2}' >harddiskcapacity.txt
HARDDISKFILESYSTEMNUM=`cat harddiskcapacity.txt|wc -l`
if [ "$HARDDISKFILESYSTEMNUM" -ge 2 ]
then
for ((i=2;i<=$HARDDISKFILESYSTEMNUM;i=i+1))
do
filesystemname=`awk '{if(NR=='"$i"') print $1}' ./harddiskcapacity.txt`
filesystemcapacity=`awk '{if(NR=='"$i"') print $2}' ./harddiskcapacity.txt`
echo -n "$filesystemname"
echo -n "-capacity="
echo -n "$filesystemcapacity"
echo -n "k"
echo -n "="
echo -n `expr "scale=1;$filesystemcapacity/1024"|bc -l`
echo -n "MB"
echo -n "="
echo -n `expr "scale=1;$filesystemcapacity/1024/1024"|bc -l`
echo "GB"
done
fi
rm -f harddiskcapacity.txt
8、内存使用率
mem-usage-rate.sh
#!/bin/bash
MEMTOTAL=`cat /proc/meminfo|sed -n '1p'|awk '{print $2}'`
#echo "MEMTOTAL=$MEMTOTAL"
MEMFREE=`cat /proc/meminfo|sed -n '2p'|awk '{print $2}'`
#echo "MEMFREE=$MEMFREE"
MEMFREERATE=`expr "scale=3;$MEMFREE/$MEMTOTAL"|bc -l`
#echo $MEMFREERATE
MEMUSAGERATE=`expr 1-$MEMFREERATE|bc -l`
#echo "MemUsageRate=$MEMUSAGERATE"
echo "MemUsageRate=`expr "scale=1; 100-$MEMFREERATE*100/1"|bc -l`%"
9、内存总量
mem-total.sh
#!/bin/bash
sed -n '1p' /proc/meminfo|awk '{print $0}'
10、PPP地址
ppp-ip.sh
#!/bin/bash
PPPSTRING=`/sbin/ifconfig|grep "ppp. Link encap:Point-to-Point Protocol"`
if [ -n "$PPPSTRING" ]
then
PPPNUM=`/sbin/ifconfig|grep "ppp. Link encap:Point-to-Point Protocol"|wc -l`
if [ "$PPPNUM" -ge 1 ]
then
let pppi=$PPPNUM-1
for ((i=0;i<=$pppi;i++))
do
echo -n "ppp$i"
echo -n "-ipaddress="
echo `ifconfig ppp$i|grep "inet addr"|cut -f 2 -d ":"|cut -f 1 -d " "`
done
fi
fi
附录:可能可以参考的链接http://www.oschina.net/question/920274_152746
相关文章推荐
- 利用shell 提取 LINUX系统监控相关信息 -1
- 利用shell脚本来监控linux系统的负载与CPU占用情况
- 利用shell脚本来监控linux系统的负载与CPU占用情况
- Linux基础之-利用shell脚本实现自动监控系统服务
- 利用shell脚本来监控linux系统的内存
- 利用shell脚本来监控linux系统的负载与CPU占用情况
- 利用shell脚本来监控linux系统的内存
- 利用shell脚本来监控linux系统的负载与CPU占用情况
- 利用shell脚本来监控linux系统
- 利用shell脚本来监控linux系统的负载与CPU占用情况
- 利用shell脚本来监控linux系统的内存
- 利用shell脚本来监控linux系统的内存
- 利用shell脚本来监控linux系统的内存 推荐
- 利用Shell脚本来监控Linux系统的负载、CPU、内存、硬盘、用户登录数
- Linux基础之-利用shell脚本实现自动监控系统服务
- 利用Shell脚本来监控Linux系统的负载、CPU、内存、硬盘、用户登录数
- 利用shell脚本来监控linux系统的负载与CPU占用情况
- 利用shell脚本来监控linux系统的内存
- 利用shell脚本来监控linux系统的内存
- 利用shell脚本来监控linux系统的负载与CPU占用情况