쉘 스크립트에서 top 결과
글쓴이: yob / 작성시간: 금, 2004/12/17 - 12:02오후
#!/bin/sh
안녕하세요~
간단한 스크립트를 만드는 도중 잘안되는 부분이 있어서
질문드립니다
스크립트 내용은 특정CPU율을 입력받아서 그 CPU율 보다
클 경우 톰캣을 종료하는 건데요..
CPU 율에 대한 체크는 top 결과 값을 가지고 하고 있습니다
ps 명령으로도 해봤는데 CPU 율을 검색하면 TOP 하고 많이
차이가 나서 ps 명령으로 판별이 안되네요
(톰캣이 top 에서 특정 CPU율 24.X % 가 되면 동작을
안하는 현상이 일어나서 일단은 조치될 때까지만 임시로
사용할려는 겁니다 ^^;;;;;;;; )
문제는 foreground 에서 하면 잘되는데
background 에서 하면 스크립트가 2개가 뜨면서
결과 자체도 안나온다는 겁니다 ㅠㅠ
아래는 스크립트 내용입니다
max_count=15 cpu_count=0 cpu_count2=0 if [ "$1" = "" ]; then echo "usage: ./webcheck [cpu_rate]" exit 1 fi while [ 1 ]; do if [ $cpu_count -eq $max_count ]; then echo "MAX COUNT OVER [MAX:$cpu_count]" echo "TOMCAT KILL" cpu_count=0 #./webstart fi cpu_rate=$(top -n 1 | grep java | grep root | awk '{ printf $9 }') if [ "$cpu_rate" = "" ]; then echo -n "CPU RATE:[NONE] : " cpu_count=0 echo "CPU UNDER COUNT:[$cpu_count]" else if [ $cpu_rate > $1 ]; then echo -n "CPU RATE:[$cpu_rate] : " cpu_count=`expr $cpu_count + 1` echo "CPU OVER COUNT:[$cpu_count]" else echo -n "CPU RATE:[$cpu_rate] : " echo "CPU UNDER COUNT:[$cpu_count]" cpu_count=0 fi fi sleep 1 done
Forums:
자문 자답이군요위처럼 했을 경우 [code:1]$ no
자문 자답이군요
위처럼 했을 경우
이런 형태로 쉘 스크립트가 자동종료됐었는데..
screen -d -m nohup test.sh 24
스크린을 써서 이런형태로 하니깐 잘 되네요
kldp 게시판을 끈질기게 뒤지니깐 결국 나오는군요 ^^;; 하..
Re: 쉘 스크립트에서 top 결과
tomcat을 판별하는 방식으로 pidfile을 쓰시는것이 좋지 않은지?
그냥 해본 소립니다.
top -p <pid> -n 1 어쩌구....
------------------ P.S. --------------
지식은 오픈해서 검증받아야 산지식이된다고 동네 아저씨가 그러더라.
댓글 달기