Simulation is ...

Virtual = Real

Flight Sim 자세히보기

ㆍ Unix

[Unix, HP-UX] 유닉스 bdf, 디스크 사용량 보기

FlightSim 2020. 8. 20. 06:00
320x100

HP-UX 유닉스를 사용하다 보면, bdf 명령어 (free disk blocks)가 있는데, 현재 디스크 용량 사용량을 확인하는 명령어이다. 근데 이것이 디스크 블락단위 등 보기가 쉽지 않다. ( bdf : Berkeley version Disk Free 의 약자인거 같다 )

그래서 리눅스의 df -h 와 같은 명령어 형태로 GB단위로 보여주는 쉡 스크립트를 작성하여 실행시키면 된다.
(bdf 명령어의 결과값을 인자로 받아와서 1025 byte로 나눈거 밖에 없다 ㅎㅎㅎ)

아래 스크립트를 vi 에디터로 편집하여 붙여 넣기 한 후 루트 디렉토리나 실행시키고자 하는 디렉토리에 넣고, bdf 라는 명령어가 있으니 예를 들어 ldf 라는 이름으로 작성하면 끝. (보통 /usr/bin/ 디렉토리에 넣으면 될듯)

참고로 모든 사용자가 실행시키거나 편집할 수 있게 하려면 chmod 777 로 ldf 를 바꾸면 된다.

또한, IBM AIX는 df -gt 로 GB blocks 단위로 보면 된다.(1024 blocks 단위로 보고 싶으면 df -k, MB blocks 단위로 보고 싶으면 df -m)


#!/bin/ksh

LV_NAME=0
LV_TOT=0
LV_USED=0
LV_AVAIL=0
LV_PER=0
LV_MOUNT=0
COUNT=1
TEMP=0

echo ==================================================================================\
=======================
echo LV_NAME LV_TOTAL\(GB\) LV_USED\(GB\) LV_FREE\(GB\) LV_USED\(%\) Mount_Filesystem \
| awk '{printf "%-30s %13s %13s %13s %13s %-20s\n",$1,$2,$3,$4,$5, $6}'
echo ==================================================================================\
=======================

for LINE in `bdf`
do

if [ $COUNT -le 7 ]
then
COUNT=`expr $COUNT + 1`
continue

else
case "`expr $COUNT \% 7`" in
1)
LV_NAME=$LINE
COUNT=`expr $COUNT + 1`
;;
2)
LV_TOT=$LINE
COUNT=`expr $COUNT + 1`
;;
3)
LV_USED=$LINE
COUNT=`expr $COUNT + 1`
;;
4)
LV_AVAIL=$LINE
COUNT=`expr $COUNT + 1`
;;
5)
LV_PER=$LINE
COUNT=`expr $COUNT + 1`
;;
6)
LV_MOUNT=$LINE
COUNT=8
echo $LV_NAME $LV_TOT $LV_USED $LV_AVAIL $LV_PER $LV_MOUNT \
| awk '{printf "%-30s %13.2f %13.2f %13.2f %13.2f %-20s\n",$1,$2/1024/1024,$3/1024/1024,$4/1024/1024,$3/$2*100, $6}'
;;
esac
fi
done

echo ==================================================================================\
=======================

 

320x100
반응형

'ㆍ Unix' 카테고리의 다른 글

GBIC, SFP  (0) 2022.05.12
Virtual Connect, Fibre Channel, VC-FC, HP, Blade, Mezzanine, HBA  (0) 2022.05.09