#!/bin/bash set -e BASE_DIR=$(cd "$(dirname "$0")"; pwd) USER_NAME=$(whoami) echo "项目路径: $BASE_DIR" # 检测 Python if command -v python3 >/dev/null 2>&1; then PYTHON_CMD=python3 elif command -v python >/dev/null 2>&1; then PYTHON_CMD=python else echo "❌ 未检测到 Python,请先安装 Python 3.6+" exit 1 fi VERSION=$($PYTHON_CMD -c 'import sys; print(".".join(map(str, sys.version_info[:3])))') MAJOR=$(echo $VERSION | cut -d. -f1) MINOR=$(echo $VERSION | cut -d. -f2) if [ "$MAJOR" -lt 3 ] || { [ "$MAJOR" -eq 3 ] && [ "$MINOR" -lt 6 ]; }; then echo "❌ Python 版本过低(需要 >= 3.6),当前版本: $VERSION" exit 1 fi echo "✅ 检测到 Python: $PYTHON_CMD ($VERSION)" # 检查 pip if ! $PYTHON_CMD -m pip --version >/dev/null 2>&1; then echo "❌ pip 未安装或不可用" exit 1 fi # 安装依赖 if [ -f "$BASE_DIR/requirements.txt" ]; then echo "📦 安装 Python 依赖..." $PYTHON_CMD -m pip install --upgrade pip -q $PYTHON_CMD -m pip install -r "$BASE_DIR/requirements.txt" -q echo "✅ 依赖安装完成" else echo "⚠️ 未找到 requirements.txt,跳过依赖安装" fi # 创建 systemd 服务 sudo tee /etc/systemd/system/PyBot.service > /dev/null <