| 123456789101112131415161718192021222324252627282930313233343536373839404142434445 |
- #!/bin/bash
- # 新用户注册邮件通知服务 - 停止脚本
- set -e
- SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
- cd "$SCRIPT_DIR"
- GREEN='\033[0;32m'
- YELLOW='\033[1;33m'
- RED='\033[0;31m'
- NC='\033[0m'
- PID_FILE="$SCRIPT_DIR/send_new_user_email.pid"
- if [ -f "$PID_FILE" ]; then
- PID=$(cat "$PID_FILE")
- if ps -p "$PID" > /dev/null 2>&1; then
- echo -e "${YELLOW}🛑 正在停止服务 (PID: $PID)...${NC}"
- kill "$PID"
- for i in {1..10}; do
- if ! ps -p "$PID" > /dev/null 2>&1; then
- break
- fi
- sleep 1
- done
- if ps -p "$PID" > /dev/null 2>&1; then
- kill -9 "$PID" 2>/dev/null || true
- fi
- rm -f "$PID_FILE"
- echo -e "${GREEN}✅ 服务已停止${NC}"
- else
- echo -e "${YELLOW}⚠️ 进程不存在 (PID: $PID)${NC}"
- rm -f "$PID_FILE"
- fi
- else
- PIDS=$(pgrep -f "send_new_user_email.py" || true)
- if [ -n "$PIDS" ]; then
- echo -e "${YELLOW}🛑 正在停止服务...${NC}"
- echo "$PIDS" | xargs kill 2>/dev/null || true
- sleep 2
- echo "$PIDS" | xargs kill -9 2>/dev/null || true
- echo -e "${GREEN}✅ 服务已停止${NC}"
- else
- echo -e "${YELLOW}⚠️ 未找到运行中的服务${NC}"
- fi
- fi
|