--- title: 度盘命令行下载利器BaiduPCS-Go date: 2020-04-16 14:32:42 categories: - 软件工具 tags: - fq --- ## 目录 - [简介](#简介) - [开始](#开始) - [常见问题](常见问题) - [参考链接](#参考链接) - [结束语](#结束语) ## 简介 - **[BaiduPCS-Go](https://github.com/iikira/BaiduPCS-Go)**是一个开源跨平台的度盘命令行客户端,为操作度盘提供实用功能。 - 该工具很大程度上解决了在VPS上下载百度云文件速度过慢的问题。 - 如果对纯命令形式的操作不习惯,可以参考**[baidupcs-web](https://github.com/liuzhuoling2011/baidupcs-web)**使用web界面操作。 --- >1.多平台支持, 支持 Windows, MacOS, Linux, 移动设备等。 2.百度帐号多用户支持。 3.[通配符](https://baike.baidu.com/item/%E9%80%9A%E9%85%8D%E7%AC%A6)匹配网盘路径和Tab自动补齐命令和路径。 4.**下载**网盘内文件, 支持多个文件或目录下载, 支持断点续传和单文件并行下载。 5.**上传**本地文件, 支持上传大文件(>2GB), 支持多个文件或目录上传。 6.**离线下载**, 支持http/https/ftp/电驴/磁力链协议。 ## 开始 >Go语言程序, 可直接在[发布页](https://github.com/iikira/BaiduPCS-Go/releases)下载使用. 可在这里下载最新commit对应的测试版: 如果程序运行时输出乱码, 请检查下终端的编码方式是否为UTF-8. 如果未带任何参数运行程序, 程序将会进入仿Linux shell系统用户界面的cli交互模式, 可直接运行相关命令. cli交互模式下, 光标所在行的前缀应为 BaiduPCS-Go >, 如果登录了百度帐号则格式为 BaiduPCS-Go:<工作目录> <百度ID>$ 程序会提供相关命令的使用说明. ### `安装` - 类Unix用户(Linux,MacOS等) >程序应在终端(Terminal)运行. - Windows用户 >程序应在命令提示符(Command Prompt)或PowerShell中运行,在mintty(例如: GitBash)可能会有显示问题. 新手建议直接双击程序运行,进入仿Linux shell的cli交互模式. - MacOS用户 >安卓, 建议使用[Termux](https://termux.com)或[NeoTerm](https://github.com/NeoTerm/NeoTerm)或终端模拟器, 以提供终端环境. 示例: [Android运行本项目程序参考示例](https://github.com/iikira/BaiduPCS-Go/wiki/Android-%E8%BF%90%E8%A1%8C%E6%9C%AC%E9%A1%B9%E7%9B%AE%E7%A8%8B%E5%BA%8F%E5%8F%82%E8%80%83%E7%A4%BA%E4%BE%8B), 有兴趣的可以参考一下. 苹果iOS,需要越狱,在Cydia搜索下载并安装MobileTerminal,或者其他提供终端环境的软件. 示例: [iOS 运行本项目程序参考示例](https://github.com/iikira/BaiduPCS-Go/wiki/iOS-%E8%BF%90%E8%A1%8C%E6%9C%AC%E9%A1%B9%E7%9B%AE%E7%A8%8B%E5%BA%8F%E5%8F%82%E8%80%83%E7%A4%BA%E4%BE%8B), 有兴趣的可以参考一下. ### `使用` - 登录度盘账号 ``` 1.常规登录百度帐号 支持在线验证绑定的手机号或邮箱 BaiduPCS-Go login 2.使用百度BDUSS来登录百度帐号 关于获取百度BDUSS可使用相关插件获取,Chrome推荐cookies.txt BaiduPCS-Go login -bduss= 例子BaiduPCS-Go login -bduss=1234567 ``` - 常用选项 ``` USAGE: BaiduPCS-Go [global options] command [command options] [arguments...] ``` ``` GLOBAL OPTIONS: --verbose 启用调试 [$BAIDUPCS_GO_VERBOSE] --help, -h show help --version, -v print the version COMMANDS: tool 工具箱 help, h, ?, ? Shows a list of commands or help for one command 其他: clear, cls 清空控制台 env 显示程序环境变量 run 执行系统命令 sumfile, sf 获取本地文件的秒传信息 update 检测程序更新 百度帐号: login [-bduss] 登录百度账号(支持常规登录以及百度BDUSS来登录) loglist 列出帐号列表 logout 退出百度帐号 su [uid] 切换百度帐号 who 获取当前帐号 百度网盘: cd [-l] 切换工作目录(支持切换目录后自动列出目录下的文件和目录及支持通配符) cp 拷贝文件/目录 createsuperfile, csf 手动分片上传—合并分片文件 download, d 下载文件/目录 export, ep 导出文件/目录 fixmd5 修复文件MD5 locate, lt 获取下载直链 ls, l, ll 列出目录(支持-asc,-desc,-time,-name,-size排序) match 测试通配符 meta 获取文件/目录的元信息 mkdir 创建目录 mv 移动/重命名文件/目录 offlinedl, clouddl, od 离线下载 pwd 输出工作目录 quota 获取网盘配额 rapidupload, ru 手动秒传文件 recycle [l] 回收站 rm 删除文件/目录(被删除的文件或目录可在网盘文件回收站找回,对删除时要验证有奇效) search, s 搜索文件(不支持查找目录,默认在当前工作目录搜索) share 分享文件/目录 tree, t 列出目录的树形图 upload, u 上传文件/目录 配置: config 显示和修改程序配置项 ``` - 下载文件/目录 ``` BaiduPCS-Go d <网盘文件或目录的路径1> <文件或目录2> <文件或目录3> ... 可选参数 --test 测试下载, 此操作不会保存文件到本地 --ow overwrite, 覆盖已存在的文件 --status 输出所有线程的工作状态 --save 将下载的文件直接保存到当前工作目录 --saveto value 将下载的文件直接保存到指定的目录 -x 为文件加上执行权限, (windows系统无效) --mode value 下载模式, 可选值: pcs, stream, locate, locate_pan, share, 默认为 locate, 相关说明见上面的帮助 (default: "locate") -p value 指定下载线程数 (default: 0) -l value 指定同时进行下载文件的数量 (default: 0) --retry value 下载失败最大重试次数 (default: 3) --nocheck 下载文件完成后不校验文件 注意点 下载的文件默认保存到程序所在目录的download/目录,支持自定义指定默认保存目录,重名的文件会自动跳过! eg:BaiduPCS-Go config set -savedir D:/Downloads 下载模式说明 pcs: 通过百度网盘的 PCS API 下载 stream: 通过百度网盘的 PCS API, 以流式文件的方式下载, 效果同 pcs locate: 默认的下载模式。从百度网盘 Android 客户端, 获取下载链接的方式来下载 locate_pan: 从百度网盘 WEB 首页获取下载链接来下载, 该下载方式需配合第三方服务器, 机密文件切勿使用此下载方式 share: 从网盘文件的分享列表获取文件的下载链接来下载 ``` - 上传文件/目录 ``` BaiduPCS-Go u <本地文件/目录的路径1> <文件/目录2> <文件/目录3> ... <目标目录> 注意点 上传默认采用分片上传的方式, 上传的文件将会保存到<目标目录>. 遇到同名文件将会自动覆盖!! 当上传的文件名和网盘的目录名称相同时, 不会覆盖目录, 防止丢失数据. ``` - 离线下载 ``` 添加离线下载任务 BaiduPCS-Go offlinedl add -path=<离线下载文件保存的路径> 资源地址1 地址2 ... 添加任务成功之后, 返回离线下载的任务ID. 精确查询离线下载任务 BaiduPCS-Go offlinedl query 任务ID1 任务ID2 ... 查询离线下载任务列表 BaiduPCS-Go offlinedl list 取消离线下载任务 BaiduPCS-Go offlinedl cancel 任务ID1 任务ID2 ... 删除离线下载任务 BaiduPCS-Go offlinedl delete 任务ID1 任务ID2 ... 清空离线下载任务记录, 程序不会进行二次确认, 谨慎操作!!! BaiduPCS-Go offlinedl delete -all ``` ### `配置相关` - 显示程序环境变量 ``` BAIDUPCS_GO_VERBOSE="0" 是否启用调试 BAIDUPCS_GO_CONFIG_DIR="/root/.config/BaiduPCS-Go" 配置文件路径 ``` - 显示和修改程序配置项 ``` # 显示配置 BaiduPCS-Go config # 设置配置 BaiduPCS-Go config set ``` ``` #设置下载文件的储存目录,默认存在/root/Downloads ./BaiduPCS-Go config set -savedir /home #设置下载最大并发量为200,建议值50~500,数值越大速度越高,但太高可能会出问题 ./BaiduPCS-Go config set -max_parallel 200 # 组合设置 BaiduPCS-Go config set -max_parallel 150 -savedir D:/Downloads ``` ## 常见问题 1. 下载速度慢/时快时慢 >尝试调高下载最大并发量和下载缓存, 以下数据为参考数据 BaiduPCS-Go config set -max_parallel 400 -cache_size 65536 2. 文件名有空格,中括号,或者是特殊字符不能识别 >使用双引号扩起文件名,或者在空格, 小括号, 中括号, 特殊字符前加一个反斜杠"\" 另外, 建议在命名文件时, 不要使用这些字符== 3. 下载速度慢不靠谱方法 >加--locate或者--relocate 大文件加--nocheck是必须的 ## 参考链接 ## 结束语 - 未完待续...