1,194
社区成员
发帖
与我相关
我的任务
分享
#!/bin/sh
echo "<H><R><ID>NAME</ID><ID>TOTAL</ID><ID>USED</ID><ID>FREE</ID><ID>usePercent</ID></R>"
echo "<R><T>04</T><T>03</T><T>03</T><T>03</T><T>09</T></R></H><B>"
VGNAME="";
lsvg -o | while read line
do
#VGNAME=rootvg:cmsvg1:cmsvg2:
VGNAME="$VGNAME$line:";
eval $(lsvg $line | awk -v NAME=$line 'BEGIN{FSV[1]=0;FSV[2]=0;FSV[3]=0;}{
if(NR==3){
FSV[1]=substr($7,2);
}else if(NR == 4){
FSV[2]=substr($7,2);
}else if(NR == 5){
FSV[3]=substr($6,2);
}
}END{
print NAME"="NAME"-"FSV[1]"-"FSV[2]"-"FSV[3]"-"(FSV[3]/FSV[1])*100;
}')
done
#echo "$rootvg" | awk -F '-' '{printf("%s %s",$1,$2)}'
echo $VGNAME | awk -v vgname=$VGNAME 'BEGIN{n=split(vgname,names,":");}
{
for(i=1;i<n;i++){
if(names[i]!=""){
name=names[i];
#name的值=rootvg
print name;
#下面一行打印的是rootvg的值
print "'$rootvg'";
#printf("'$name'") 怎么才能让着句代码也输出rootvg的值?? 简单的说就是name是一个变量,动态替换name的值?
printf("'$name'");
}
}
}'
echo "</B>"
VGNAME=rootvg:cmsvg1:cmsvg2:
rootvg=CSDN
echo $VGNAME | awk -F: -v myvg=$rootvg '{
for(i=1;i<=NF;i++){
if($i=="rootvg"){
print $i" --- "myvg
}else{
print $i
}
}
}'