3步上手BaiduPCS-Go:百度网盘命令行管理与分享转存的完整指南
【免费下载链接】BaiduPCS-Goiikira/BaiduPCS-Go原版基础上集成了分享链接/秒传链接转存功能项目地址: https://gitcode.com/GitHub_Trending/ba/BaiduPCS-Go
BaiduPCS-Go 是一款用 Go 语言编写的百度网盘命令行管理工具,仿 Linux shell 风格,支持登录、下载、上传、分享链接转存等完整的网盘管理操作,适合需要批量、可脚本化管理网盘文件的用户。
🚀 编译运行登录,最短路径跑起 BaiduPCS-Go
整个上手过程只有 3 步:拿到可执行文件、进入交互界面、完成一次登录。
第 1 步:获取可执行文件
# 克隆项目源码 git clone https://gitcode.com/GitHub_Trending/ba/BaiduPCS-Go # 编译生成可执行文件(需本机装有 Go 环境) go build -o BaiduPCS-Go没有 Go 环境的话,也可以直接获取对应平台(Windows / Linux / macOS)的预编译程序。
第 2 步:启动程序
# 不带任何参数运行,进入仿 Linux shell 的交互模式 ./BaiduPCS-Go交互模式下支持 Tab 自动补全命令和路径,也可在提示符后直接输入help查看用法。Windows 上请在命令提示符或 PowerShell 中运行。
第 3 步:登录百度账号
| 方式 | 命令形式 | 说明 |
|---|---|---|
| Cookies(推荐) | login -cookies=<Cookies> | 成功率最高 |
| BDUSS + STOKEN | login -bduss=<BDUSS> -stoken=<STOKEN> | STOKEN 必须在百度网盘页面获取 |
| 交互式输入 | login | 已长期不维护,不推荐 |
# 从浏览器复制的完整 Cookies 登录 BaiduPCS-Go login -cookies="BAIDUID=xxx; BDUSS=xxx; STOKEN=xxx"登录后用who确认当前账号、quota查看剩余空间,两条都正常输出即代表登录成功。
📥 一条命令把分享链接转存进网盘
这是加强版相对原版最核心的功能(源码见 转存功能实现)。
目标:把别人分享的网盘文件保存到自己的网盘。
# 先切换到想存放文件的目标目录(转存固定保存到当前工作目录) BaiduPCS-Go cd /我的资源 # 转存分享链接,第 2 个参数为提取码 BaiduPCS-Go transfer https://pan.baidu.com/s/xxx edv4提取码也可以直接写在链接里,写成https://pan.baidu.com/s/xxx?pwd=edv4后只传链接即可。两个常用参数:
| 参数 | 含义 |
|---|---|
--download | 转存完成后自动下载到本地默认目录 |
--fs_id | 只转存分享页中的指定文件(按 fs_id 选择) |
验证:命令成功会输出"转存成功, 保存了xxx到当前目录",再用ls列出当前目录,确认文件已出现。
📤 批量下载目录与定时备份上传
场景一:批量下载整个目录
# 设置本地保存目录(Windows 路径请用斜杠 / 而非反斜杠) BaiduPCS-Go config set -savedir D:/Downloads # 下载整个目录,本地重名文件自动跳过 BaiduPCS-Go d /我的资源d是download的简写,常用参数:
| 参数 | 含义 | 建议值 |
|---|---|---|
-p | 单文件下载线程数 | 普通用户 1 |
-l | 同时下载的文件数 | 普通用户 1 |
--ow | 覆盖本地已存在的同名文件 | 按需 |
--nocheck | 下载完成后不校验 MD5 | 按需 |
验证:文件会出现在savedir指定的目录(未配置时默认在程序所在目录下的download/中)。
场景二:定时备份本地目录到网盘
# 在网盘创建当日备份目录 BaiduPCS-Go mkdir /备份/20260929 # 上传本地目录,rsync 策略只覆盖与本地大小不同的同名文件 BaiduPCS-Go upload /本地/数据 /备份/20260929 --policy rsync上传单文件最大支持 128GB,走分片上传并默认检测秒传,加--norapid可跳过秒传。
验证:ls /备份/20260929确认文件数量与本地一致。
⚙️ 防限速的关键配置与常见坑
直接影响使用体验的配置项只有 3 个,取值随账号类型变化,配置结构见 配置模块:
| 配置项 | 含义 | 普通用户取值 | SVIP 用户取值 |
|---|---|---|---|
max_parallel | 最大下载并发线程数 | 1 | 10~20(不建议超过 20) |
max_download_load | 同时下载的文件数 | 1 | 1~2 |
savedir | 下载文件保存目录 | 自定义 | 自定义 |
普通用户把线程数调大,只会在短时间内"提速",随后极易触发限速,导致数小时甚至数天内账号在各客户端都接近 0 速,且本工具不提供任何提速能力。
# 普通用户的一次性安全设置 BaiduPCS-Go config set -max_parallel 1 -max_download_load 1 # 配置改错后一键恢复默认 BaiduPCS-Go config reset其余配置(appid、user_agent、pcs_addr等)保持默认即可,随意修改appid、user_agent反而会导致访问网盘服务器出错。
几个高频问题按"现象 → 原因 → 解决"排查:
| 现象 | 原因 | 解决 |
|---|---|---|
| 下载速度掉到几乎为 0 | 线程数调大触发限速 | 按上表把两项设为 1,等待限速解除 |
| 终端输出乱码 | 终端编码不是 UTF-8 | 把终端编码切换为 UTF-8 |
| 登录报 STOKEN 缺失 | STOKEN 未在百度网盘页面获取,或拿成了bdstoken | 正确的 STOKEN 通常包含大写字母,重新从网盘页面复制 |
| 上传偶发异常 | 默认上传服务器不畅 | config set -pcs_addr c.pcs.baidu.com换用静态服务器(v3.9.8 后默认动态获取,一般无需配置) |
📈 进阶:交互模式与脚本自动化
交互模式是日常使用效率最高的姿势:cd /我的*可用通配符跳转目录,BaiduPCS-Go match /我的资源/*.mp4可先测试通配符匹配结果,su <uid>/loglist在多账号间快速切换,BaiduPCS-Go update可检查并在线升级程序。
自动化只需把命令交给 shell 或 crontab:
# crontab 示例:每天凌晨 3 点把本地数据目录同步到网盘备份目录 0 3 * * * /path/to/BaiduPCS-Go upload /data/backup /备份 --policy rsync写在最后
BaiduPCS-Go 的网盘接口封装集中在 baidupcs/,各命令逻辑在 internal/pcscommand/,代码全部开源,遇到行为不符预期时可自行对照。建议今天就完成第一次登录并转存一个分享链接,再按上表设好线程数,即可安全开始日常使用。
【免费下载链接】BaiduPCS-Goiikira/BaiduPCS-Go原版基础上集成了分享链接/秒传链接转存功能项目地址: https://gitcode.com/GitHub_Trending/ba/BaiduPCS-Go
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考