inode 감시 먹고살기/Unix 2025. 2. 18. 10:14

#!/bin/bash

# 특정 파일시스템의 inode 사용율을 체크합니다.
check_inode_usage() {
  local filesystem=$1
  local usage=$(df -i | grep $filesystem | awk '{print $5}' | sed 's/%//')
  echo "$filesystem inode 사용율: $usage%"
}

# 전체 파일시스템을 순회하며 inode 사용율이 80% 이상인 경우를 출력합니다.
for filesystem in $(df -i | awk 'NR>1 {print $1}')
do
  usage=$(df -i | grep $filesystem | awk '{print $5}' | sed 's/%//')
  if [ $usage -ge 80 ]; then
    echo "$filesystem inode 사용율: $usage%"
  fi
done

while IFS= read -r line; do
  filesystem=$(echo $line | awk '{print $1}')
  usage=$(echo $line | awk '{print $5}' | sed 's/%//')
  if [[ "$usage" =~ ^[0-9]+$ ]] && [ "$usage" -ge 80 ]; then
    echo "$filesystem inode 사용율: $usage%"
  fi
done < <(df -i | awk 'NR>1')

'먹고살기 > Unix' 카테고리의 다른 글

공백제거  (5) 2014.03.21
쉘 스크립트  (0) 2011.06.30
리눅스 실무 명령어  (0) 2011.04.29
리눅스 명령어  (0) 2011.04.29
공백제거 먹고살기/Unix 2014. 3. 21. 13:04

sed -i -e 's/\r$//' install.sh

'먹고살기 > Unix' 카테고리의 다른 글

inode 감시  (0) 2025.02.18
쉘 스크립트  (0) 2011.06.30
리눅스 실무 명령어  (0) 2011.04.29
리눅스 명령어  (0) 2011.04.29

VMware에 CentOs 를 설치하고 언어 한글로 바꾸니까 모두 깨질때

한글 폰트 설치되지 않아서 깨질수 있따.

1. 한글 설치 하기

- yum install kde-i18n-Korean

- yum install fonts-korean

2.  한글 폰트 적용 하기

- fc-cache

- fc-cache -frv

 


===========================================================
* read : 쉘스크립트파일에서 커맨드라인 입력받기

스크립트파일 안에서
read
커맨드라인에서
aaa<Enter>
다시 스크립트파일로
aaa가 들어온다.

!!! 그러면, 여러줄을 입력받으려면?
read로 스크립트파일에서 탈출하여 커맨드라인으로 간 상태서...
aaa\<Enter>
bbb\<Enter>
ccc<Enter>
하면...
스크립트파일로 aaa bbb ccc가 들어온다.

===========================================================
* eval : 쉘스크립트파일안에서 쉘명령 실행

스크립트파일안에서 문자열로 표기된 쉘명령을 실행하려면 eval을 사용해야함.
ex) 스크립트파일 안
eval "ls -al"

===========================================================
* echo와 escape(\:backslash,'':quote) : 문자열, 출력

echo 뒤 문자열은 구지 ""로 감쌀 필요없다.
ex) a=하하하
echo 호호호 $a
echo "호호호 "$a
echo "호호호 $a"
*** 다 똑같은 결과

echo의 기본옵션은 특수문자(앞에 /백슬래쉬를 붙임)에 대해 escape시킨다.
ex) echo "aaa\nbbb"
aaa\nbbb
이를 제대로 처리(해석)하려면 -e 옵션(/을 해석함)을 준다.
ex) echo -e "aaa\nbbb"
aaa
bbb
다시 특수문자를 escape시키려면 -E 옵션을 준다.
ex) echo -E "aaa\nbbb"
aaa\nbbb

-n : 스크립트파일에서 echo를 호출할 때마다 새로운 라인이 생성되어 출력되는데 이를 막고, 바로전 출력된 라인에 붙여 출력한다.(커맨드모드에선 먹지않는다.)

*** 변수값을 출력하지않고 변수명을 그대로 출력하려면?
-> ''(single quote)를 사용한다.
ex) a=aaa
echo '하하하 $a'
하하하 $a

*** ''은 모든 것을 다 escape 시키기에 full quoting이라 하고
""은 $와 같은 몇몇 제어문자는 해석하기에 partial quoting이라한다.

!!!주의) 본쉘(bin/sh) 스크립트파일에서 문자열은 개행문자(\n)없어도 파일라인상으로 그대로 읽어 처리하나, bash에서는 스크립트파일안 문자열을 개행시키려면 반드시 개행문자(\n)를 삽입해야하고 더불어 커맨드라인 상에서 제대로 표시하기위해 공백까지 제거시켜야한다(\r\n).


<tip3013> ``(backquote) : 명령어치환(Command Subsitution) [제어문자]

문자열안에 들어있는 쉘명령어를 문자열로 인식하지않고 쉘명령어로 재해석한다.
ex) echo `cat file1` #역따옴표(backquote)임에 유의!!!

*** 스크립트파일 매개변수나 read인자로 특정 명령구문을 넘길 때 유용하다.