38 lines
794 B
Bash
38 lines
794 B
Bash
#!/bin/bash
|
|
|
|
APP_NAME="owrawww"
|
|
APP_DIR="/home/www/owrainfo"
|
|
PID_FILE="$APP_DIR/owrawww.pid"
|
|
|
|
if [ ! -f "$PID_FILE" ]; then
|
|
echo "[$APP_NAME] PID 파일이 없습니다. 실행 중이 아닌 것 같습니다."
|
|
exit 1
|
|
fi
|
|
|
|
PID=$(cat "$PID_FILE")
|
|
|
|
if ! kill -0 "$PID" 2>/dev/null; then
|
|
echo "[$APP_NAME] 프로세스($PID)가 이미 종료되어 있습니다."
|
|
rm -f "$PID_FILE"
|
|
exit 0
|
|
fi
|
|
|
|
echo "[$APP_NAME] 종료 중... (PID: $PID)"
|
|
kill "$PID"
|
|
|
|
# 최대 30초 대기
|
|
for i in $(seq 1 30); do
|
|
if ! kill -0 "$PID" 2>/dev/null; then
|
|
rm -f "$PID_FILE"
|
|
echo "[$APP_NAME] 정상 종료됨."
|
|
exit 0
|
|
fi
|
|
sleep 1
|
|
done
|
|
|
|
# 강제 종료
|
|
echo "[$APP_NAME] 강제 종료합니다."
|
|
kill -9 "$PID"
|
|
rm -f "$PID_FILE"
|
|
echo "[$APP_NAME] 강제 종료됨."
|