核心功能: - SSH终端: 密码/密钥认证、XTerm.js终端、多主题配色、IP高亮 - SFTP管理: 双栏文件管理、上传下载、传输队列 - 端口转发: 本地/远程转发、SOCKS5动态代理、规则管理 架构改进: - 拆分大型组件 (SFTPView/TabBar/Sidebar) - 添加统一日志和错误处理 - 修复React严格模式下的终端黑屏问题 UI更新: - 新增端口转发视图 - 更新UI预览文档 - 左侧栏右键菜单支持SFTP快捷打开
47 lines
1.1 KiB
Bash
Executable File
47 lines
1.1 KiB
Bash
Executable File
#!/bin/bash
|
|
set -e
|
|
|
|
# 颜色定义
|
|
RED='\033[0;31m'
|
|
GREEN='\033[0;32m'
|
|
YELLOW='\033[1;33m'
|
|
CYAN='\033[0;36m'
|
|
NC='\033[0m'
|
|
|
|
PID_FILE="/tmp/opsxshell.pid"
|
|
LOG_FILE="/tmp/opsxshell.log"
|
|
|
|
echo -e "${CYAN}🦐 启动 OpsXShell...${NC}"
|
|
|
|
# 1. 清理旧进程
|
|
echo -e "${YELLOW}🧹 清理旧进程...${NC}"
|
|
pkill -f "vite" 2>/dev/null || true
|
|
pkill -f "electron" 2>/dev/null || true
|
|
pkill -f "opsxshell" 2>/dev/null || true
|
|
sleep 1
|
|
|
|
# 2. 检查依赖
|
|
if [ ! -d "node_modules" ]; then
|
|
echo -e "${YELLOW}📦 安装依赖...${NC}"
|
|
npm install
|
|
fi
|
|
|
|
# 3. 启动 Vite + Electron (npm run dev 已包含 electron 启动)
|
|
echo -e "${GREEN}⚡ 启动 OpsXShell...${NC}"
|
|
export VITE_DEV_SERVER_URL=http://localhost:5173
|
|
npm run dev > "$LOG_FILE" 2>&1 &
|
|
VITE_PID=$!
|
|
echo $VITE_PID > "$PID_FILE"
|
|
|
|
# 4. 等待启动
|
|
sleep 3
|
|
|
|
echo ""
|
|
echo -e "${CYAN}📝 注意: IMKCFRunLoopWakeUpReliable 是 macOS Electron 已知问题,不影响功能${NC}"
|
|
echo -e "${GREEN}🎉 OpsXShell 已启动!${NC}"
|
|
echo -e "${CYAN}📄 日志: tail -f ${LOG_FILE}${NC}"
|
|
echo -e "${CYAN}🔍 DevTools: 按 Cmd+Option+I (macOS) 或 F12${NC}"
|
|
|
|
# 等待子进程
|
|
wait $VITE_PID 2>/dev/null || true
|