66 lines
1.7 KiB
Bash
66 lines
1.7 KiB
Bash
#!/bin/bash
|
||
|
||
# MIP广告自动点击系统 - 停止服务脚本
|
||
|
||
set -e
|
||
|
||
echo "============================================================"
|
||
echo "停止MIP广告自动点击系统"
|
||
echo "============================================================"
|
||
|
||
# 颜色定义
|
||
RED='\033[0;31m'
|
||
GREEN='\033[0;32m'
|
||
YELLOW='\033[1;33m'
|
||
NC='\033[0m'
|
||
|
||
PROJECT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||
cd "$PROJECT_DIR"
|
||
|
||
# 检查PID文件
|
||
if [ -f "app.pid" ]; then
|
||
PID=$(cat app.pid)
|
||
echo "找到PID文件: $PID"
|
||
|
||
# 检查进程是否存在
|
||
if ps -p $PID > /dev/null 2>&1; then
|
||
echo -e "${YELLOW}正在停止服务 (PID: $PID)...${NC}"
|
||
kill $PID
|
||
|
||
# 等待进程结束
|
||
sleep 2
|
||
|
||
if ps -p $PID > /dev/null 2>&1; then
|
||
echo -e "${YELLOW}进程未响应,强制终止...${NC}"
|
||
kill -9 $PID
|
||
fi
|
||
|
||
rm -f app.pid
|
||
echo -e "${GREEN}✓ 服务已停止${NC}"
|
||
else
|
||
echo -e "${YELLOW}进程不存在,清理PID文件${NC}"
|
||
rm -f app.pid
|
||
fi
|
||
else
|
||
echo -e "${YELLOW}未找到PID文件,尝试通过端口查找进程...${NC}"
|
||
|
||
# 通过端口查找进程
|
||
PORT=5000
|
||
PID=$(lsof -ti :$PORT 2>/dev/null || echo "")
|
||
|
||
if [ -n "$PID" ]; then
|
||
echo "找到占用端口 $PORT 的进程: $PID"
|
||
echo -e "${YELLOW}正在停止...${NC}"
|
||
kill $PID
|
||
sleep 2
|
||
echo -e "${GREEN}✓ 服务已停止${NC}"
|
||
else
|
||
echo -e "${GREEN}没有运行中的服务${NC}"
|
||
fi
|
||
fi
|
||
|
||
echo ""
|
||
echo "============================================================"
|
||
echo "服务已停止"
|
||
echo "============================================================"
|