初次提交代码
This commit is contained in:
48
haobang-security-xdr/syslog-serve/stop-syslog-serve.sh
Normal file
48
haobang-security-xdr/syslog-serve/stop-syslog-serve.sh
Normal file
@@ -0,0 +1,48 @@
|
||||
#!/bin/bash
|
||||
|
||||
# 快速停止脚本 - 无需确认
|
||||
|
||||
if [ "$(id -u)" -ne 0 ]; then
|
||||
echo "需要 root 权限,请使用: sudo $0"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
APP_NAME="syslog-serve"
|
||||
PID_FILE="/tmp/${APP_NAME}.pid"
|
||||
PORTS=(514 8189)
|
||||
|
||||
echo "停止 ${APP_NAME}..."
|
||||
|
||||
# 1. 通过 PID 文件停止
|
||||
if [ -f "$PID_FILE" ]; then
|
||||
PID=$(cat $PID_FILE)
|
||||
if kill -0 $PID 2>/dev/null; then
|
||||
echo "停止进程 $PID..."
|
||||
kill -15 $PID
|
||||
sleep 3
|
||||
|
||||
if kill -0 $PID 2>/dev/null; then
|
||||
echo "强制停止..."
|
||||
kill -9 $PID
|
||||
fi
|
||||
fi
|
||||
rm -f $PID_FILE
|
||||
fi
|
||||
|
||||
# 2. 停止所有监听端口的 Java 进程
|
||||
for port in ${PORTS[@]}; do
|
||||
PIDS=$(lsof -ti:$port 2>/dev/null)
|
||||
if [ ! -z "$PIDS" ]; then
|
||||
for pid in $PIDS; do
|
||||
if ps -p $pid | grep -q "java"; then
|
||||
echo "停止监听端口 $port 的进程 $pid..."
|
||||
kill -9 $pid 2>/dev/null
|
||||
fi
|
||||
done
|
||||
fi
|
||||
done
|
||||
|
||||
# 3. 停止所有包含应用名的进程
|
||||
pkill -f "java.*syslog-serve" 2>/dev/null
|
||||
|
||||
echo "停止完成"
|
||||
Reference in New Issue
Block a user