본문 바로가기
Linux Unix

[ Linux ] 프로세스 죽이기 쉘

by 정윤재 2011. 10. 26.

ps -ef 로 pid 를 찾고 해당 pid 로
kill -9 pid 로 프로세스를 죽일 수 있지만 그렇게만 하면
뭔가 없어 보인다.

그래서 pid 를 자동으로 찾은 다음 kill -9 로 프로세스를 죽이는
스크립트를 짜 보았다.

#!/bin/sh
echo "Push CMS Application shutting down....."
pid=`ps -ef | grep com.incross.cms.service.PushCmsExecute | grep -v 'grep' | awk '{print $2}'`
#ps -ef 로 pid 가져오기. grep -v 는 ps 한 프로세스를 제외 하는것
if [ -z $pid ]; then
#-z 옵션은 null 일 때 true
  echo "Already CMS Application Stopped."
  exit 1
else
  kill -9 $pid
fi
sleep 1
CMS_PROCESS_COUNT=`ps -ef | grep com.incross.cms.service.PushCmsExecute | grep -v 'grep' | awk '{print $2}' | wc | awk '{print $1}'`
#wc 명령은 count 를 세는 명령이므로 이렇게 하면 밑에 처럼 숫자로 표시 가능
echo "Operating Application Count : "$CMS_PROCESS_COUNT
if [ "$CMS_PROCESS_COUNT" = "0" ]; then
  echo "Push CMS Application stopped."
else
  echo "Push CMS Application shutting down fail."
fi


댓글