이번 작업은 디스크 사용량을 확인할 수 있는 스크립트입니다.

지정된 디스크 경로들의 사용률을 확인하고, 그중 최대 사용률을 출력합니다.

 


#!/bin/bash

source /home/shell/env.sh


# 배열 변수에 디스크 경로 저장
max_disk_usage=0

  • 최대 디스크 사용률을 저장할 변수 초기화


# disk_path가 없을 경우 101 출력 후 종료
if [ -z "$disk_paths" ]; then
   echo 101
   exit 0
fi

  • disk_paths 배열이 비어있는지 확인합니다.
  • 비어있다면 -z 조건이 참
  • disk_paths가 비어있을 경우, 101 출력


# 배열 순회하며 각 디스크의 사용률 확인
for disk_path in "${disk_paths[@]}"

  • disk_paths 배열의 각 요소에 대해 루프


do
   # df 명령어를 사용하여 디스크 사용률 확인
   disk_usage=$(df -h $disk_path | awk '{print $5}' | tail -n 1 | sed 's/%//')

  • df -h 명령어를 사용하여 disk_path의 디스크 사용률 확인
  • awk '{print $5}'는 사용률 컬럼 선택
  • tail -n 1은 마지막 줄 선택
  • sed 's/%//'는 퍼센트 기호 제거

   if [ "${disk_usage}" -ge "${max_disk_usage}" ]

  • 현재 디스크 사용률이 최대 사용률보다 크거나 같은지 확인

   then
      max_disk_usage=$disk_usage

  • 조건이 참이면, 최대 사용률을 현재 디스크 사용률로 업데이트

   fi
done

echo $max_disk_usage


 

더보기

#!/bin/bash

source /home/shell/env.sh


# 배열 변수에 디스크 경로 저장
max_disk_usage=0

# disk_path가 없을 경우 101 출력 후 종료
if [ -z "$disk_paths" ]; then
   echo 101
   exit 0
fi


# 배열 순회하며 각 디스크의 사용률 확인
for disk_path in "${disk_paths[@]}"
do
   # df 명령어를 사용하여 디스크 사용률 확인
   disk_usage=$(df -h $disk_path | awk '{print $5}' | tail -n 1 | sed 's/%//')

   if [ "${disk_usage}" -ge "${max_disk_usage}" ]
   then
      max_disk_usage=$disk_usage
   fi
done

echo $max_disk_usage

 

+ Recent posts