news 2026/9/29 2:35:43

BaiduPCS-Go 上手:在终端里管理百度网盘

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
BaiduPCS-Go 上手:在终端里管理百度网盘

BaiduPCS-Go 上手:在终端里管理百度网盘

【免费下载链接】BaiduPCS-Goiikira/BaiduPCS-Go原版基础上集成了分享链接/秒传链接转存功能项目地址: https://gitcode.com/GitHub_Trending/ba/BaiduPCS-Go

你有一台笔记本或服务器,需要把本地文件批量送进百度网盘,再把别人分享的资源转存到自己网盘里。BaiduPCS-Go 是一个用 Go 写的百度网盘命令行工具,把上传、下载、转存、多账号切换都做成了终端命令:登录一次之后可以反复调用,也方便直接写进脚本里。

快速起步:安装与登录一次跑通

先确认本机装好了 Go 环境。下面三条命令把仓库拉下来并编译出可执行程序:

git clone https://gitcode.com/GitHub_Trending/ba/BaiduPCS-Go cd BaiduPCS-Go go build

执行完,当前目录会出现 BaiduPCS-Go 可执行文件(Windows 下带 .exe)。不想编译也可以直接取官方发布的预编译版本。

程序不带参数直接运行,会进入仿 Linux shell 的交互模式,提示符是BaiduPCS-Go >,登录后会带上工作目录和账号 ID。交互模式下敲命令不用带BaiduPCS-Go前缀,比如直接输入ls或cd /我的资源。另外注意把终端编码设为 UTF-8,否则中文输出会乱码。

登录推荐用 cookies 方式,成功率最高。用浏览器登录 pan.baidu.com,从 cookie 里复制整段值,然后执行:

BaiduPCS-Go login -cookies="BAIDUID=...; BIDUPSID=...; BDUSS=...; STOKEN=..."

两个易错点:cookies 必须在百度网盘页面(pan.baidu.com)获取,在百度首页拿的不一定有效;STOKEN 是 cookie 里的一个字段,不是 bdstoken,拿到的值里没有大写字母多半是拿错了。

另外两种方式一句话带过:手上只有 BDUSS 的话,用login -bduss=你的BDUSS -stoken=你的STOKEN;交互式login(账号密码)已长期不维护,不推荐。

登录成功后执行who,能输出当前账号信息就说明整条链路跑通了。之后所有操作都可以BaiduPCS-Go加子命令的方式执行。

高频任务三连:上传、下载、转存

下面三个任务是日常最高频的操作,每个都按目标、操作、验证、变体四段走。

本地上传:一条命令送文件进网盘

【目标】把本地文件或整个目录上传到网盘指定目录。

【操作】把本地的 report.pdf 上传到网盘的 /工作文档 目录:

BaiduPCS-Go upload ./report.pdf /工作文档

【验证】上传结束后执行ls /工作文档,看到 report.pdf 出现在列表里即成功。

【变体】要传整个本地目录,直接把目录路径作为参数。同名文件默认跳过,加--policy rsync可以只跳过大小未变化的文件、有变化的自动覆盖。

网盘下载:整个目录拉回本地

【目标】把网盘里的文件或整个目录保存到本地。

【操作】下载 /我的资源 目录下的一个视频:

BaiduPCS-Go d /我的资源/1.mp4

【验证】文件默认落在程序所在目录的 download/ 下,打开该目录确认文件存在且大小正常。想换保存位置,先执行config set -savedir D:/Downloads(Windows 路径请用正斜杠)。

【变体】下载整个目录就传目录路径:BaiduPCS-Go d /我的资源。下载支持断点续传,中断后重新执行同一命令即可续传;本地已存在的同名文件会自动跳过。

分享转存:不打开浏览器保存别人的资源

【目标】完成百度网盘转存:把分享链接里的文件直接存进自己的网盘。

【操作】先切到想存放文件的目录,再执行 transfer——转存只保存到当前工作目录,不能指定目标路径:

BaiduPCS-Go cd /收藏 BaiduPCS-Go transfer https://pan.baidu.com/s/xxxxx 提取码

【验证】执行ls,看到转存进来的文件即成功。

【变体】链接自带?pwd=提取码时可以直接传整条链接,新版还支持分享口令格式。转存完成后接一条d命令,就能把刚转存的文件继续拉回本地。

性能调优:按账号类型设置并发参数 ⚡

先说结论:这个工具不提供超出官方客户端的提速,配置的目的是让下载稳定,而不是"更快"。

参数普通用户SVIP说明
max_parallel110~20单文件下载并发线程数,SVIP 不建议超过 20
max_download_load11~2同时下载的文件数
cache_size64KB1MB缓存大小
savedir自定义自定义下载保存目录

普通用户把并发拉高并不会真提速:短时间快一下之后会触发限速,账号可能在几个小时甚至几天内所有客户端都接近 0 速。SVIP 按实际带宽把 max_parallel 调到 10 以上,配合 max_download_load 1~2,通常可以稳定满速。

SVIP 用户想一次把两个并发参数都设好:

BaiduPCS-Go config set -max_parallel 15 -max_download_load 2

配错了可以config reset一键恢复默认;单独执行config可以查看当前全部配置值。

排坑手册:登录、下载与上传常见问题 🧰

现象可能原因处理
login 报错或验证不通过cookies 在百度首页而非网盘页面获取;STOKEN 拿成了 bdstoken到 pan.baidu.com 重新复制 cookies,确认 STOKEN 含大写字母
登录时弹出手机/邮箱验证账号长期未用该方式登录改用 cookies 登录,绕开交互验证
下载速度骤降到接近 0普通用户并发设置大于 1,触发限速max_parallel 和 max_download_load 都改回 1,等待限速解除
下载报 check MD5 不通过,但文件其实正常官方网盘端 MD5 与本地计算不一致的已知问题加--nocheck参数,或在配置里启用 no_check
上传卡住、0B/s 或报网络错误当前 PCS 服务器不通用config set -pcs_addr换成 c.pcs.baidu.com 等已知可用地址再试
同名文件上传后网盘没变化默认策略是跳过同名文件把 upload_policy 配置为 overwrite 或 rsync
海外服务器上上传失败pan.baidu.com 在境外访问受限在配置里为 pan.baidu.com 设置 proxy_hostnames 回国代理

深入探索:核心源码目录与文档入口

命令行为由几个目录分工实现:baidupcs/ 封装百度网盘的接口调用,上传、下载、分享、转存的请求逻辑都在这里;internal/pcscommand/是各子命令的实现层,requester/负责 HTTP 客户端与并发上传下载,pcsutil/放校验、单位转换等通用工具。想读代码,可以从 README 的命令列表对照着找入口。

接口层面可以参考 docs/overview.md 了解 PCS 文件 API 的请求方式与错误码结构;遇到 bug 或有想法可以提交 Issue 反馈,也可以直接改代码参与贡献。

适合需要网盘命令行管理、或想把上传下载写进定时脚本的场景。下一步建议:把"转存 + 下载"串成一个 shell 脚本,定时拉取别人网盘的更新。

【免费下载链接】BaiduPCS-Goiikira/BaiduPCS-Go原版基础上集成了分享链接/秒传链接转存功能项目地址: https://gitcode.com/GitHub_Trending/ba/BaiduPCS-Go

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/29 2:35:05

MIPI时钟非单调性问题解析与工程解决

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/9/29 2:33:45

PCIe Gen5 EDSFF NVMe SSD参考设计深度解读:信号完整性与散热功耗

做企业级存储的同行,最近两年应该都绕不开EDSFF这四个字母。我花了大半个周末,把OCP发布的《PCIe Gen5 EDSFF NVMe SSD参考设计》文档完整过了一遍,一边看一边对照自己之前调试Gen4盘、U.2盘的实际经验,发现这份文档的价值不在于它…

作者头像 李华
网站建设 2026/9/29 2:33:43

C++推箱子游戏开发实战:EasyX实现地图、逻辑与交互

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华