Files

38 lines
1.1 KiB
Bash
Executable File

#!/bin/bash
# FreeCut 自由剪辑 启动脚本
cd "$(dirname "$0")"
PORT=${PORT:-16089}
PY=/home/hz1/miniconda3/envs/openclaw/bin/python3
LOG=logs/app.log
mkdir -p logs
case "${1:-start}" in
start)
if [ -f logs/app.pid ] && kill -0 "$(cat logs/app.pid)" 2>/dev/null; then
echo "FreeCut 已在运行 (PID $(cat logs/app.pid), 端口 $PORT)"
exit 0
fi
nohup env PORT=$PORT $PY app.py >> "$LOG" 2>&1 &
echo $! > logs/app.pid
sleep 1.2
echo "FreeCut 已启动: http://$(hostname -I 2>/dev/null | awk '{print $1}'):$PORT/ (PID $(cat logs/app.pid))"
;;
stop)
if [ -f logs/app.pid ] && kill -0 "$(cat logs/app.pid)" 2>/dev/null; then
kill "$(cat logs/app.pid)" && echo "已停止"
rm -f logs/app.pid
else
echo "未在运行"
fi
;;
restart) "$0" stop; sleep 0.6; "$0" start ;;
status)
if [ -f logs/app.pid ] && kill -0 "$(cat logs/app.pid)" 2>/dev/null; then
echo "运行中 (PID $(cat logs/app.pid), 端口 $PORT)"
else
echo "未运行"
fi
;;
*) echo "用法: ./start.sh [start|stop|restart|status]";;
esac