-
[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
반응형'case Computer :' 카테고리의 다른 글
제로보드 4.1pl9 신규취약점 및 배포⋅서비스 중지에따른 주의 (0) 2009.09.23 [Web Hacking] Web Game javahacking.com (0) 2009.09.12 Zeroboard 4 배포 중지 (1) 2009.09.12 Expect Tool 사용하기 (0) 2009.09.10 [Unix/Linux] scp / expect 이용한 파일 전송 스크립트 (2) 2009.09.10