FluxDown CLI — 一条命令加任务,远程连 Server 或本地嵌入引擎
什么时候用 CLI
FluxDown CLI 是一个独立的命令行二进制 fluxdown——适合以下场景:
- 自动化脚本 — 在 crontab / systemd timer / GitHub Actions 里批量加下载任务。
- 远程操作 — 远程 SSH 到 NAS,用 CLI 加任务给 NAS 上的 FluxDown Server。
- 无界面环境 — 纯命令行 Linux 机器,没有 GPUI 界面。
- 管道处理 —
cat urls.txt | fluxdown add -i -把一批 URL 批量喂进去。
三种运行模式
# 模式一:连正在跑的桌面端或 Server
fluxdown add https://example.com/a.zip https://example.com/b.zip
# 模式二:指定远程 Server(比如 NAS)
fluxdown --server http://nas:17800 add https://...
# 模式三:--local 直接嵌入引擎(不依赖任何正在跑的 FluxDown 实例)
fluxdown add https://example.com/file.zip --local
--local 模式会在当前进程里直接嵌入引擎,启动 SQLite 数据库、执行下载、跑完退出。适合没有常驻 FluxDown 的机器。
常用命令速查
| 命令 | 作用 |
|---|---|
fluxdown add <url>... | 加一个或多个下载任务 |
fluxdown add -i urls.txt | 从文件读 URL(每行一个) |
fluxdown add -i - | 从 stdin 读 URL(管道友好) |
fluxdown list | 列出所有任务(默认人类可读) |
fluxdown list --json | JSON 格式输出,方便脚本解析 |
fluxdown pause <task-id> | 暂停一个任务 |
fluxdown resume <task-id> | 恢复一个任务 |
fluxdown remove <task-id> | 移除一个任务 |
fluxdown queue list | 列出队列 |
fluxdown queue pause <queue> | 暂停整个队列 |
构建 CLI(从源码)
cargo build -p fluxdown_cli --release
# 二进制在 target/release/fluxdown(Windows 是 fluxdown.exe)
示例场景
crontab 每日下载
# 每天凌晨 2:00 从 urls.txt 里的 URL 批量下发给 NAS Server
0 2 * * * fluxdown --server http://nas:17800 add -i /home/user/urls.txt
GitHub Actions 构建后下发下载
- run: |
echo "https://github.com/.../releases/download/v1.0/app.zip" | \
fluxdown --server ${{ secrets.FLUXDOWN_SERVER }} add -i -
远程 SSH 加任务
ssh root@nas "fluxdown add https://example.com/huge-file.iso"
从哪来
CLI 二进制和桌面端、Server 镜像一起发布——GitHub Releases 页面每个版本会有 CLI 的单独归档。也可以用 cargo install fluxdown_cli 从 crates.io 装(如果已发布)。