ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [Shell Script] if / 용량 체크 스크립트
    case Computer : 2009. 9. 12. 15:53

    쉘 스크립트를 만들때 한번에 뚝딱하고 만들어지는 경우가 없다.

    유연성이 없어 똑같은 형식으로 작성해야한다.


    아래는 /var 용량을 체크 하는 스크립트이다

    #!/bin/bash
    DATA=`/bin/df -k | /bin/grep /var | /bin/awk '{if( $3 >= 3072 ) print "TRUE"; print "FALSE";}'`
    DATE=`/bin/date '+%y%m%d_%H%M'`
    DATE2=`/bin/date '+%y%m%d'`

    echo "$DATE" >> /home/sensor/log/var_log/log_$DATE2.txt
    echo "`/bin/df -k`">> /home/sensor/log/var_log/log_$DATE2.txt


    if [ "$DATA" = "TRUE" ]
    then
    echo " -----> Delete Log " >> /home/sensor/log/var_log/log_$DATE2.txt
    /bin/cp /var/log/message /home/sensor/log/var_log/message.$DATE
    /bin/cp /dev/null /var/log/message
    fi


    echo "" >> /home/sensor/log/var_log/log_$DATE2.txt
    echo "##############################################" >> /home/sensor/log/var_log/log_$DATE2.txt



    위에서 주의 할 점 몇가지

    1. 변수 지정할경우에
      DATA=`/bin/df -k`     --- O        <- 딱 붙여서 써야함.
      DATA = `/bin/df -k`   --- X
      DATA =`/bin/df -k`    --- X

    2. if문
      if ( "String" = "String" )      --- X   <- () 아니라 []이다
      if [ "String" -eq "String" ]  --- X   <- 문자열 비교시에 =, >, < 사용   / 정수 비교시에 -eq, -ne, -ge, -le
      if ( "String" == "String" )     --- X


           정수     :   문자열
    값1 -eq 값2 : 값1 = 값2
    값1 -ne 값2 : 값1 != 값2
    값1 -lt 값2   : 값1 < 값2
    값1 -le 값2  : 값1 <= 값2
    값1 -gt 값2  : 값1 > 값2
    값1 -ge 값2 : 값1 >= 값2

    반응형

    댓글

Designed by Tistory.