#!/bin/bash # 素材库系统 start/stop 脚本 (默认 16091) cd "$(dirname "$0")" PORT=${PORT:-16091} PID_FILE="material.pid" LOG="logs/app.log" PY=/home/hz1/miniconda3/envs/openclaw/bin/python3 mkdir -p logs data start() { if [ -f "$PID_FILE" ] && kill -0 "$(cat $PID_FILE)" 2>/dev/null; then echo "已在运行 PID=$(cat $PID_FILE) (port $PORT)" return fi nohup $PY app.py > "$LOG" 2>&1 & echo $! > "$PID_FILE" sleep 2 if kill -0 "$(cat $PID_FILE)" 2>/dev/null; then echo "✅ 素材库系统已启动: http://$(hostname -I 2>/dev/null | awk '{print $1}'):$PORT PID=$(cat $PID_FILE)" else echo "❌ 启动失败,查看日志: $LOG" tail -20 "$LOG" fi } stop() { if [ -f "$PID_FILE" ] && kill -0 "$(cat $PID_FILE)" 2>/dev/null; then kill "$(cat $PID_FILE)" rm -f "$PID_FILE" echo "已停止" else echo "未在运行" fi } case "$1" in stop) stop ;; restart) stop; sleep 1; start ;; *) start ;; esac