Ever try and do system reporting based on bdf?
Annoying as all heck that sometimes the output is two line and sometimes one? I was forced to solve that problem today.
if [ “$OS” = “HP-UX” ]
then
dcmd=bdf
fi
arraypointer=0
exec $dcmd | egrep -v “%used|/dev/deviceFileSystem” | awk ‘{lvn=$1;v=$2;if (v==””) {getline;cap=$1;ucap=$2;acap=$3;puse=$4;mp=$5;printf “%s %s %s %s %s %s\n”, lvn,cap,ucap,acap,puse,mp} else {printf “%s %s %s %s %s %s\n”, $1,$2,$3,$4,$5,$6} }’ | while read -r p1 p2 p3 p4 p5 p6
do
#### calculations
done
Typical bdf output:
/dev/vg00/lvol9 4096000 3140019 896285 78% /var/adm/crash
/dev/vg_stgb1/lvol1
1572765696 1382813225 178080447 89% /steven05stgb
More when the script is done
Tags: awk, awk with if else logic, bdf, hpux, systems administration