66 lines
2.5 KiB
Bash
66 lines
2.5 KiB
Bash
#!/bin/bash
|
||
# 脚本名称:start_webman.sh
|
||
# 功能:批量启动 Webman 后台进程,拆分日志并避免阻塞
|
||
|
||
# ==================== 配置区域 ====================
|
||
# 1. 定义要启动的 Webman 命令(与需求完全对应)
|
||
declare -a WEBMAN_COMMANDS=(
|
||
"applysmstemp"
|
||
"birthdaygiftsms"
|
||
"rabborderprint"
|
||
"rabbproductupdate"
|
||
)
|
||
|
||
# 2. 日志存储目录(建议放在 Webman 项目根目录下)
|
||
LOG_DIR="./webman_process_logs"
|
||
|
||
# 3. Webman 脚本路径(若脚本不在当前目录,需写绝对路径,如 /www/webman/webman)
|
||
WEBMAN_PATH="php webman"
|
||
# ==================== 配置区域结束 ====================
|
||
|
||
|
||
# 第一步:创建日志目录(不存在则创建)
|
||
if [ ! -d "${LOG_DIR}" ]; then
|
||
mkdir -p "${LOG_DIR}"
|
||
# 赋予目录读写权限(避免日志写入失败)
|
||
chmod 755 "${LOG_DIR}"
|
||
echo -e "\033[32m✅ 日志目录不存在,已自动创建:${LOG_DIR}\033[0m"
|
||
else
|
||
echo -e "\033[32m✅ 日志目录已存在:${LOG_DIR}\033[0m"
|
||
fi
|
||
|
||
|
||
# 第二步:批量启动进程
|
||
echo -e "\n\033[33m🚀 开始启动 Webman 进程...\033[0m"
|
||
echo "=============================================="
|
||
|
||
for CMD in "${WEBMAN_COMMANDS[@]}"; do
|
||
# 拼接完整命令(nohup + 日志重定向,避免阻塞)
|
||
FULL_CMD="${WEBMAN_PATH} ${CMD}"
|
||
# 日志文件按进程名区分(方便后续排查)
|
||
LOG_FILE="${LOG_DIR}/${CMD}_$(date +%Y%m%d).log"
|
||
|
||
echo -e "\n正在启动进程:\033[34m${FULL_CMD}\033[0m"
|
||
echo "日志文件路径:${LOG_FILE}"
|
||
|
||
# 核心:执行 nohup 命令,重定向所有输出(避免占用终端)
|
||
nohup ${FULL_CMD} > "${LOG_FILE}" 2>&1 &
|
||
|
||
# 检查启动状态(通过进程名模糊匹配)
|
||
PROCESS_PID=$(ps aux | grep "${FULL_CMD}" | grep -v grep | awk '{print $2}')
|
||
if [ -n "${PROCESS_PID}" ]; then
|
||
echo -e "\033[32m✅ 进程启动成功!PID:${PROCESS_PID}\033[0m"
|
||
else
|
||
echo -e "\033[31m❌ 进程启动失败!请查看日志:${LOG_FILE}\033[0m"
|
||
fi
|
||
echo "----------------------------------------------"
|
||
done
|
||
|
||
|
||
# 第三步:输出后续操作提示
|
||
echo -e "\n\033[33m📌 操作提示:\033[0m"
|
||
echo "1. 查看所有 Webman 进程:ps aux | grep 'webman'"
|
||
echo "2. 查看指定进程日志:tail -f ${LOG_DIR}/[进程名]_日期.log(如 tail -f ${LOG_DIR}/applysmstemp_$(date +%Y%m%d).log)"
|
||
echo "3. 停止进程:kill [PID](强制停止:kill -9 [PID])"
|
||
echo -e "\n\033[32m🎉 所有进程启动命令已执行完毕!\033[0m"
|