APPENDIX · 平台
APPENDIX_platform
Windows / macOS / Linux 命令速查
ROUND 3 — ROUTE 每步的 Windows/macOS/Linux 命令等价速查表
【统一 header】截至 2026-09-21|海外生态数字;国内分支见各附录相应声明。
本文件为最终交付物四附录之一(统一编号交叉引用):附录 A=生活场景玩法与红线(APPENDIX_scenarios.md)|附录 B=预算选型决策树与成本精算(APPENDIX_cost.md)|附录 C=安全护栏与事故响应(APPENDIX_security.md)|附录 D=三平台(Linux/macOS/Windows)命令等价速查(APPENDIX_platform.md)。主文档与配套:final/MASTER.md、final/ROUTE.md、final/CHECKLIST.md、final/APPENDIX_facts.md(事实核查账本)。
置信度标签沿用项目惯例:一手/双源/单源/低置信;所有带数字结论的验证日期、半衰期与重查时点见各附录"保鲜日历/时效性"节。
本附录定位(附录 D):命令层——ROUTE 每步在 Linux/macOS/Windows 的等价写法与安装路径。沙箱/审计/kill switch 等安全命令的上下文见附录 C,订阅与 API 成本见附录 B,场景落地示例见附录 A。
- 输入:
../round2/master_skeleton.md(阶段 0–5 用到的所有命令)、../round2/novice_test.md(bash 实测结果)、../round1/ 各报告的命令块。
- 验证日期:2026-09-21(本会话检索,官方文档/仓库一手为主)。
- 置信度图例:〔一手〕= 官方文档/官方仓库原文;〔单源〕= 仅一源未交叉;bash 实测= novice_test 在 Linux 上真实跑过(Windows/macOS 侧为文献转述,未实测)。
- 半衰期:安装命令类 3 个月(包管理器与安装脚本会变,尤其 n8n 3.0 改版);调度器语法类 24 个月(系统级 API,极稳);URL 安装脚本类 6 个月。
- 中国大陆用户注意:
winget/brew/GitHub raw 直连可能超时,本表在「网络慢怎么办」节给了替代源;所有命令在 Windows 用 PowerShell 7(winget install Microsoft.PowerShell)或 macOS/Linux 用默认 shell 复制粘贴即可。
0. 三平台总对照(先背这张小表)
| 你想做什么 |
Linux |
macOS |
Windows |
| 装包(CLI 工具) |
apt install <pkg>(Debian/Kali/Ubuntu)或 sudo pacman -S(Arch) |
brew install <pkg> |
winget install -e --id <Pkg.Id> |
| 家目录 |
~/ 或 $HOME |
~/ 或 $HOME |
PowerShell 里 ~/、$HOME、$env:USERPROFILE 等价〔一手 learn.microsoft.com about_Parsing〕;CMD 没有 ~,必须用 %USERPROFILE% |
| 后台服务 |
systemctl start/stop/enable |
launchctl load/unload + launchctl bootstrap gui/$(id -u) <plist>(旧 load/unload 已被 Apple 社区标为 legacy)〔单源 stackoverflow 74820491〕 |
schtasks / Task Scheduler,或 sc.exe(真服务) |
| 定时任务 |
crontab -e |
launchd plist 的 StartCalendarInterval |
schtasks /create /sc daily /st 09:00 /tn 名 /tr 路径〔一手 learn.microsoft.com schtasks-create〕 |
| 查日志 |
journalctl -u <服务>、tail -f x.log |
log show --predicate 'process == "X"' --last 1h |
事件查看器 → 应用程序和服务日志 → Microsoft → Windows → TaskScheduler;或 Get-WinEvent |
| 编辑器/终端 |
nano / vim |
nano / vim |
notepad、VS Code |
| 环境变量 |
export FOO=bar |
export FOO=bar |
PowerShell:$env:FOO = "bar"(只当前会话);setx FOO bar(持久) |
curl \| sh 一键装 |
原生支持 |
原生支持 |
PowerShell:irm <url> \| iex |
shell 语法差异陷阱(Windows):bash 的 cmd1 && cmd2、$(...)、$(date +%F)、heredoc <<EOF、grep/jq/sed 在 CMD/PowerShell 不是都可直接用。最省心的做法:装 Git for Windows(自带 Git Bash)〔一手 git-scm.com/install/windows〕,所有 bash 命令原样能跑;或直接用 WSL2(把 Linux 报告里的命令 100% 复用)。
1. 按工具对照(ROUTE 阶段 0–5 涉及的全部工具)
1.1 包管理器底座(阶段 0 就要用)
| 操作 |
Linux |
macOS |
Windows |
| 装 Node.js(≥22.22,promptfoo 依赖)〔一手 promptfoo.dev/docs/installation〕 |
sudo apt install -y nodejs npm(或用 nvm) |
brew install node |
winget install OpenJS.NodeJS.LTS |
| 装 Python(uv 管理最省心) |
系统自带 3.x(PEP 668 受管,别裸 pip) |
自带 + brew install python |
winget install Python.Python.3.12 |
| 装 uv |
curl -LsSf https://astral.sh/uv/install.sh \| sh〔一手 astral-sh/uv README〕 |
同左 |
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 \| iex" 或 winget install --id=astral-sh.uv -e〔一手 astral.sh docs〕 |
| 装 Git |
sudo apt install -y git |
brew install git |
winget install --id Git.Git -e --source winget〔一手 git-scm.com/install/windows〕 |
| 装 jq |
sudo apt install -y jq |
brew install jq |
winget install jqlang.jq |
1.2 Obsidian(记忆系统阶段 0,维度 2)
| 操作 |
Linux |
macOS |
Windows |
| 安装 |
AppImage:chmod u+x Obsidian-<version>.AppImage && ./Obsidian-<version>.AppImage --no-sandbox;或 flatpak install flathub md.obsidian.Obsidian〔一手 obsidian.md/help/install〕 |
brew install --cask obsidian |
官网 obsidian.md/download 下 Universal 安装包,双击〔一手 obsidian.md/help/install〕 |
| 建 vault 目录 |
mkdir -p ~/memory-vault/{00-inbox,10-projects,20-areas,90-archive} |
同左 |
PowerShell:mkdir ~\memory-vault, ~\memory-vault\00-inbox, ~\memory-vault\10-projects, ~\memory-vault\20-areas, ~\memory-vault\90-archive(PowerShell 不支持 {a,b,c} 展开) |
Smart Connections / Copilot 都是 Obsidian 内的 GUI 插件,三平台安装路径相同(Settings → Community Plugins),novice_test 未实测(无 GUI),GUI 步骤三平台一致。
1.3 Ollama(阶段 0/1/3,本地模型)
| 操作 |
Linux |
macOS |
Windows |
| 安装(官方最新路径) |
curl -fsSL https://ollama.com/install.sh \| shbash 实测 |
brew install ollama(或官网 .dmg 拖入) |
winget install -e --id Ollama.Ollama,或 PowerShell irm https://ollama.com/install.ps1 \| iex〔一手 ollama.com/download/windows〕 |
| 装固定版本 |
OLLAMA_VERSION=0.34.2 curl -fsSL https://ollama.com/install.sh \| sh〔bash 实测:会装到指定版本〕 |
同 Linux |
Windows 无 OLLAMA_VERSION 环境变量机制——winget 会拉最新;要固定版本需去 GitHub Releases 下对应 OllamaSetup.exe(或用 /DIR= 自定义路径)〔一手 docs.ollama.com/windows〕 |
| 升级 |
重跑 install.sh〔bash 实测平滑升级、模型保留〕 |
brew upgrade ollama |
winget upgrade -e --id Ollama.Ollama |
| 拉模型 / 推理 |
ollama pull qwen2.5:0.5b、ollama run qwen2.5:0.5b "你好"bash 实测 |
三平台命令完全相同 |
三平台命令完全相同 |
| 装成后台服务 |
自动创建 systemd 单元(OLLAMA_NO_START=1 在 Linux 无效,novice_test 卡点 7)bash 实测 |
自动注册 launchd 服务(GUI App) |
自动注册 Windows 服务/开机自启(GUI App,装完即后台运行)〔一手 docs.ollama.com/windows〕 |
| 查服务状态 |
systemctl status ollama;API:curl http://127.0.0.1:11434/ |
launchctl list \| grep ollama;同 API |
服务控制面板看 Ollama;同 API |
| 模型存放位置 |
~/.ollama |
~/.ollama |
%HOMEPATH%\.ollama;日志在 %LOCALAPPDATA%\Ollama〔一手 docs.ollama.com/windows〕 |
1.4 promptfoo(阶段 0,评测仪表盘)
| 操作 |
Linux |
macOS |
Windows |
| 安装 |
npm i -g promptfoo(novice_test 实测装到 v0.123.1、约 2.6G,小磁盘注意)bash 实测 |
同 Linux,或 brew install promptfoo〔一手 promptfoo.dev/docs/installation〕 |
同 npm 命令(PowerShell 一致) |
pip install promptfoo |
不推荐(PyPI 上只是 wrapper,novice_test 卡点 6:PEP 668 也会拒) |
同 |
同 |
| 跑 eval |
promptfoo eval(provider 写法 ollama:chat:<model>,冒号不是点号——novice_test 卡点 1)bash 实测 |
同 |
同 |
| Web 面板 |
promptfoo view(无 GUI 服务器跳过) |
有 GUI,同命令 |
有 GUI,同命令 |
1.5 uv / venv / pip(Python 生态,LightRAG、browser-use、LoRA 微调)
| 操作 |
Linux |
macOS |
Windows |
| 建 venv |
python3 -m venv ~/lightrag-venv && source ~/lightrag-venv/bin/activatebash 实测 |
同左 |
python -m venv ~\lightrag-venv;激活用 ~\lightrag-venv\Scripts\Activate.ps1(PowerShell)或 ~\lightrag-venv\Scripts\activate.bat(CMD)〔一手 docs.browser-use.com 提及 Windows 激活路径〕 |
| 用 uv 建 venv |
uv venv --python 3.12 && source .venv/bin/activate〔一手 astral.sh〕 |
同左 |
同建法;激活 .venv\Scripts\activate〔一手 docs.browser-use.com/quickstart〕 |
| 绕过 PEP 668 |
novice_test 卡点 6:直装被拒(externally-managed-environment),必须 venv 或 pipxbash 实测 |
macOS 自带 Python 同样受管,一样建议 venv |
Windows 没有 PEP 668 拦截,裸 pip install 可用,但仍强烈建议 venv(防依赖打架) |
uvx <tool>(一次性跑工具,如 uvx mcp-scan@latest) |
三平台命令相同〔一手 astral.sh〕 |
同 |
同;Windows 若 uvx 不在 PATH,重启终端(installer 改了 profile) |
1.6 Docker(Qdrant、OpenMemory、n8n;沙箱化安全用法见附录 C §2.1)
| 操作 |
Linux |
macOS |
Windows |
| 安装 Docker |
sudo apt install docker.io && sudo usermod -aG docker $USER(重新登录生效) |
brew install --cask docker(或 OrbStack,更轻,Round1 computer_use 推荐) |
winget install Docker.DockerDesktop(需要 WSL2 后端) |
| Qdrant 单容器 |
docker run -d --name qdrant --rm -p 127.0.0.1:6333:6333 qdrant/qdrantbash 实测 |
macOS 一样写 127.0.0.1:6333:6333,防端口裸奔到公网的坑三平台同理(Docker Desktop 默认绑 loopback,但显式写更稳) |
同 Linux 写法;Docker Desktop 装完需在设置里启用 WSL2 集成 |
| 查端口/杀容器 |
docker ps、docker rm -f qdrantbash 实测 |
同 |
同(PowerShell/CMD 命令一致) |
1.7 n8n(阶段 2,管道 glue)
| 操作 |
Linux |
macOS |
Windows |
| 官方推荐路径 |
Docker:docker volume create n8n_data && docker run -it --rm --name n8n -p 5678:5678 -e GENERIC_TIMEZONE="Asia/Shanghai" -e TZ="Asia/Shanghai" -e N8N_ENFORCE_SETTINGS_FILE_PERMISSIONS=true -e N8N_RUNNERS_ENABLED=true -v n8n_data:/home/node/.n8n docker.n8n.io/n8nio/n8n〔一手 docs.n8n.io install-with-docker〕 |
同(Docker Desktop / OrbStack) |
同 Docker 命令(PowerShell 里多行 \ 改成 ` 或写一行) |
| npm 方式 |
npm install n8n -g〔一手 docs.n8n.io install-with-npm〕 |
同 |
同;官方提醒 Windows 出问题先确认 Node.js 装好 |
| ⚠️ 重大时效 |
n8n 3.0(2026-10 起发布)只通过 Docker 分发,npm 安装老版本还能用、新装不再支持〔一手 docs.n8n.io one-line-setup〕——Windows/macOS 用户一律优先走 Docker |
|
|
| 一行式安装 |
curl -fsSL https://n8n.io/setup.sh \| sh(需 Docker)〔一手 docs.n8n.io one-line-setup〕 |
同 |
不支持 PowerShell/CMD 直跑,官方明确说要么 WSL、要么 Git Bash(未端到端验证)〔一手 docs.n8n.io one-line-setup〕 |
| 访问 |
浏览器开 http://localhost:5678 |
同 |
同 |
1.8 Claude Code(阶段 1/2,agent CLI;订阅与 API 成本对比见附录 B §3.3)
| 操作 |
Linux |
macOS |
Windows |
| 安装(原生安装器,官方推荐) |
curl -fsSL https://claude.ai/install.sh \| bash〔一手 code.claude.com/docs/en/quickstart〕 |
同左 |
PowerShell:curl -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd && del install.cmd 或 winget install Anthropic.ClaudeCode〔一手 code.claude.com/docs/en/quickstart〕 |
| 原生 Windows 限制 |
— |
— |
不支持沙箱(sandboxing);建议装 Git for Windows 并设 CLAUDE_CODE_GIT_BASH_PATH 指向 bash.exe〔一手 code.claude.com/docs/en/setup〕 |
| 添加 Playwright MCP |
claude mcp add playwright -- npx @playwright/mcp@latest(novice_test 未覆盖,按官方 README)〔一手 microsoft/playwright-mcp README〕 |
同 |
同;Windows PowerShell 里写 claude mcp add playwright npx @playwright/mcp@latest(不要加 -- 前的空格歧义) |
| MCP 配置文件位置 |
~/.claude.json(或项目级 .mcp.json) |
同 |
%USERPROFILE%\.claude.json |
| Headless/定时用 |
claude -p "..."(print 模式,cron 里用) |
同 |
同 |
1.9 browser-use(阶段 1,浏览器执行)
| 操作 |
Linux |
macOS |
Windows |
| 安装 |
uv venv --python 3.12 && source .venv/bin/activate && uv pip install browser-use && uvx browser-use install〔一手 docs.browser-use.com/quickstart〕 |
同左 |
同命令;激活改 .venv\Scripts\activate〔一手 docs.browser-use.com〕 |
| 安装浏览器内核 |
playwright install chromium --with-deps --no-shell(首次会下载,首次跑慢是正常)〔一手 PyPI browser-use〕 |
同 |
同(Windows 无 --with-deps 必要性,写了也不报错) |
| API key |
.env 文件里 BROWSER_USE_API_KEY=... 或自带 ANTHROPIC/OPENAI key |
同 |
同(.env 三平台通用) |
1.10 cron(Linux)↔ launchd(macOS)↔ Task Scheduler(Windows)
同一个「每天 9:00 跑 daily_brief.sh」任务的三平台写法:
| 平台 |
命令 |
备注 |
| Linux |
(crontab -l 2>/dev/null; echo "0 9 * * * $HOME/agents/daily_brief.sh >> $HOME/agents/cron.log 2>&1") \| crontab -〔bash 实测 19/19 成功〕 |
novice_test 三铁律:①绝对路径 ②重定向日志 >> x.log 2>&1 ③先手动跑通再加 cron |
| macOS |
launchd plist(~/Library/LaunchAgents/com.me.daily-brief.plist)里写 ProgramArguments + StartCalendarInterval {Hour=9 Minute=0},然后 launchctl bootstrap gui/$(id -u) ~/Library/LaunchAgents/com.me.daily-brief.plist〔单源 stackoverflow/社区 blog,未实测〕 |
Apple 官方 man 页偏旧,社区建议弃用 launchctl load/unload 改用 bootstrap/bootout;plist 是 XML,新手直接照抄 SO 模板 |
| Windows |
schtasks /create /tn "DailyBrief" /tr "C:\Users\<你>\agents\daily_brief.bat" /sc daily /st 09:00〔一手 learn.microsoft.com schtasks-create〕 |
或 PowerShell:New-ScheduledTaskAction -Execute "..." + New-ScheduledTaskTrigger -Daily -At 9am + Register-ScheduledTask〔一手 learn.microsoft.com New-ScheduledTask〕 |
| 立即触发一次 |
crontab 无此原生功能(等下一分钟);systemd-run --on-active=5 ... 可 |
launchctl start <label> |
| 看任务列表 |
crontab -l;systemd 用 systemctl list-timers |
launchctl list \| grep <label> |
| 删除 |
crontab -e 手动删行 |
launchctl bootout gui/$(id -u) <plist路径> + 删文件 |
| 日志在哪 |
重定向到自己指定的文件(cron 默认只发本地 mail);systemd 用 journalctl -u <服务> |
log show --last 1h --predicate 'process == "<脚本名>"' |
| 卡点 |
cron 环境 PATH 极简(novice_test 卡点 11) |
GUI 程序需在 gui domain;权限易配错 |
1.11 ADB / 手机(阶段 3,Open-AutoGLM)
| 操作 |
Linux |
macOS |
Windows |
| 装 adb |
sudo apt install -y adb |
brew install --cask android-platform-tools |
winget install Google.PlatformTools(含 adb/fastboot) |
| 确认设备 |
adb devices〔Round1 computer_use 阶段 3〕 |
同 |
同 |
| 跑 AutoGLM |
git clone https://github.com/zai-org/Open-AutoGLM && cd Open-AutoGLM && pip install -r requirements.txt && pip install -e . && export BIGMODEL_API_KEY=... && python main.py --device-type adb "..." |
同;export 在 macOS Terminal 可用 |
git clone/pip/python main.py 一致;export BIGMODEL_API_KEY=... 改 $env:BIGMODEL_API_KEY="..."(PowerShell) |
1.12 其他散点命令(出现在 Round1 报告里)
| 用途 |
Linux |
macOS |
Windows |
| 装视频/音量类小工具 |
sudo apt install -y ffmpeg |
brew install ffmpeg |
winget install Gyan.FFmpeg |
| scp 传文件到 VPS(阶段 4,$5 VPS 路线) |
原生 scp |
原生 scp |
Windows 10 1809+ 自带 OpenSSH Client(含 scp/ssh),默认可能未启用——设置 → 可选功能 → 添加「OpenSSH 客户端」;PowerShell 装法 Add-WindowsCapability -Online -Name OpenSSH.Client~~~~0.0.1.0〔一手 learn.microsoft.com openssh_install_firstuse〕 |
| macOS 桌面控制 |
— |
osascript -e 'tell app "Finder" to ...'(原生最稳通道,Round1 computer_use §5.1) |
PowerShell 的 SendKeys / UI Automation,或用 Computer Use API,无直接等价 |
| Apple Notes / 苹果生态 |
— |
Apple Notes 无全文 API,只能 AppleScript/Shortcuts MCP 浅查询〔Round1 personal_memory §5〕 |
无 |
| GitHub 项目核查 |
curl -s https://api.github.com/repos/<owner>/<repo> \| jq '{stargazers_count, pushed_at, archived}'〔bash 实测 4 仓库全通过;匿名限流 60/h〕 |
同 |
PowerShell:irm https://api.github.com/repos/<owner>/<repo> \| ConvertFrom-Json \| Select stargazers_count, pushed_at(无 jq 也能看) |
| mcp-scan(安全护栏) |
uvx mcp-scan@latest〔Round2 security_redteam §91〕 |
同 |
同(uvx 三平台一致) |
uv pip freeze > sbom.txt |
同左 |
同左 |
同(PowerShell 重定向 > 一样可用) |
| WSL2(Linux 命令全线复用) |
— |
— |
wsl --install(管理员 PowerShell,装完重启)——想一步到位把本表所有 Linux 列命令原样跑,就上 WSL2 |
2. 网络慢怎么办(中国大陆用户)
| 场景 |
建议 |
winget install 下载慢 |
一般走微软 CDN,直连没问题;个别包(如 Docker Desktop)从外网拉,可换官网手动下载安装包 |
brew install 慢 |
可用国内镜像(清华/中科大 Homebrew 镜像),但镜像源半衰期 6 个月,以官方文档为准 |
ollama pull 模型慢 |
Ollama 无官方国内镜像;小模型(0.5B/3B)单文件几百 MB,一般可忍;7B+ 建议 VPN 或换镜像站 |
npm i -g 慢 |
npm config set registry https://registry.npmmirror.com(淘宝镜像,社区维护)〔单源〕 |
| GitHub raw / install.sh 超时 |
改用镜像站(如 ghproxy 类,可信度低,装之前肉眼检查脚本内容)或手动下载 release |
| Docker Hub 慢 |
配国内 registry mirror,或换 docker.n8n.io(n8n 官方自己的 registry)〔一手 docs.n8n.io install-with-docker 用了官方 registry〕 |
置信度提醒:本节全部为社区经验〔单源〕,未实测;镜像站可用性随时变,用它前先确认最新状态。
3. 诚实清单(本速查表未验证的部分)
- 所有 Windows/macOS 列命令均未在本机实测(本机是 Linux Kali)。每条都标了来源(官方文档〔一手〕/社区〔单源〕),但Windows 侧的调度器、plist、路径变量三平台差异最容易出错,第一次用时建议先跑一条最小冒烟(例如
schtasks /create 装一个 1 分钟跑 echo hi > out.txt 的任务)。
- GUI 插件类步骤(Obsidian Smart Connections/Copilot、n8n Web UI、promptfoo view)三平台应该一致,但 novice_test 无 GUI 未验证。
- n8n 3.0 切换到 Docker-only 是 2026-10 的变更点,本表按官方文档写;若你已经装了 npm 版,升级路径看官方迁移指南〔一手 docs.n8n.io one-line-setup,半衰期 3 个月〕。
- Windows 上 Claude Code 原生不支持沙箱〔一手 code.claude.com/docs/en/setup〕——意味着 ROUTE 阶段 2 的「沙箱四件套」在 Windows 原生路径缺一角,建议这类用户直接上 WSL2 或 macOS/Linux。
- cron → launchd / Task Scheduler 的等价性不是 100%:cron 的
*/2 * * * *(每 2 分钟)在 Task Scheduler 对应 /sc minute /mo 2,launchd 对应 StartInterval=120;但 cron 的「错过就跳过」语义、时区、登录触发差异都没逐一测过,遇到具体差异以官方文档为准。
本文件由 Round 3 子代理写于 2026-09-21;所有 Windows/macOS 等价命令均给出 URL 溯源,未实测项已逐条标注;如有更新(尤其 n8n 3.0 与 uv/winget 的安装路径),以官方文档为准。