今日做周报汇总是发现平台可以比较直观的查看并统计分配磁盘的真实使用情况,但是分配出去的量没有很直观的体现,所以晚了一点时间写了一个抓取共享文件系统下分配磁盘大小的脚本,可供大家使用。
话不多说直接上代码!!!
#!/bin/bash
cd /vms/int_share03/ #切换至目标目录
> test1.txt #清空转存文件
#获取所有磁盘大小
for line in $(ls | grep 'volume\|inc')
do
qemu-img info $line |sed -n '3p'|awk '{print $3}' >> test1.txt
done
#处理数据
sed -i 's/G//g' test1.txt
sed -i 's/.0T/000/g' test1.txt
sed -i 's/.1T/100/g' test1.txt
sed -i 's/.2T/200/g' test1.txt
sed -i 's/.3T/300/g' test1.txt
sed -i 's/.4T/400/g' test1.txt
sed -i 's/.5T/500/g' test1.txt
sed -i 's/.6T/600/g' test1.txt
sed -i 's/.7T/700/g' test1.txt
sed -i 's/.8T/800/g' test1.txt
sed -i 's/.9T/900/g' test1.txt
sum1=`cat test1.txt | awk '{print $1}' | awk '{sum+=$1}END{print sum}'`
###########################################################
cd /vms/int_share04/ #切换至目标目录
> test1.txt #清空转存文件
#获取所有磁盘大小
for line in $(ls | grep 'volume\|inc')
do
qemu-img info $line |sed -n '3p'|awk '{print $3}' >> test1.txt
done
#处理数据
sed -i 's/G//g' test1.txt
sed -i 's/.0T/000/g' test1.txt
sed -i 's/.1T/100/g' test1.txt
sed -i 's/.2T/200/g' test1.txt
sed -i 's/.3T/300/g' test1.txt
sed -i 's/.4T/400/g' test1.txt
sed -i 's/.5T/500/g' test1.txt
sed -i 's/.6T/600/g' test1.txt
sed -i 's/.7T/700/g' test1.txt
sed -i 's/.8T/800/g' test1.txt
sed -i 's/.9T/900/g' test1.txt
sum2=`cat test1.txt | awk '{print $1}' | awk '{sum+=$1}END{print sum}'`
###########################################################
cd /vms/int_share07/ #切换至目标目录
> test1.txt #清空转存文件
#获取所有磁盘大小
for line in $(ls | grep 'volume\|inc')
do
qemu-img info $line |sed -n '3p'|awk '{print $3}' >> test1.txt
done
#处理数据
sed -i 's/G//g' test1.txt
sed -i 's/.0T/000/g' test1.txt
sed -i 's/.1T/100/g' test1.txt
sed -i 's/.2T/200/g' test1.txt
sed -i 's/.3T/300/g' test1.txt
sed -i 's/.4T/400/g' test1.txt
sed -i 's/.5T/500/g' test1.txt
sed -i 's/.6T/600/g' test1.txt
sed -i 's/.7T/700/g' test1.txt
sed -i 's/.8T/800/g' test1.txt
sed -i 's/.9T/900/g' test1.txt
sum3=`cat test1.txt | awk '{print $1}' | awk '{sum+=$1}END{print sum}'`
###########################################################
cd /vms/int_share08/ #切换至目标目录
> test1.txt #清空转存文件
#获取所有磁盘大小
for line in $(ls | grep 'volume\|inc')
do
qemu-img info $line |sed -n '3p'|awk '{print $3}' >> test1.txt
done
#处理数据
sed -i 's/G//g' test1.txt
sed -i 's/.0T/000/g' test1.txt
sed -i 's/.1T/100/g' test1.txt
sed -i 's/.2T/200/g' test1.txt
sed -i 's/.3T/300/g' test1.txt
sed -i 's/.4T/400/g' test1.txt
sed -i 's/.5T/500/g' test1.txt
sed -i 's/.6T/600/g' test1.txt
sed -i 's/.7T/700/g' test1.txt
sed -i 's/.8T/800/g' test1.txt
sed -i 's/.9T/900/g' test1.txt
sum4=`cat test1.txt | awk '{print $1}' | awk '{sum+=$1}END{print sum}'`
###########################################################
sum0=$(expr $sum1 + $sum2 + $sum3 + $sum4)
echo $sum0