BaiduPCS-Go | 百度网盘命令行工具(基于 Go)
提到百度网盘,想必大家都很熟悉吧。
百度网盘自 2012 年上线运行以来,迅速积累了大量用户。但是狗改不了吃屎,作为百度的产品,百度网盘现在是越来越恶心了,不给充钱就限速,官方居然还不承认(百度网盘 - 维基百科 )其实给免费账号限速也是可以理解的(毕竟别人也是要吃饭的,没有利润的产品肯定是走不远的)但百度居然给我限速到 20 KB/s
!这还能用?!!
但人们的力量是强大的,被百度恶心到的用户们很快就找到了破解百度网盘限速的方法——多线程下载。你不是只给我 20 KB/s
吗?我开TM 500 个线程,一样把 10 M/s
的带宽占满。于是乎一大批第三方网盘拔地而起,例如:<del>PanDownload</del>(已停止运营)、Village(Android)、油猴脚本 等。
今天介绍的 BaiduPCS-Go 也是其中一个,相比于其他第三方网盘,具有以下特点:
- 不需要 Aria2、IDM 等第三方软件
- 自定义线程数(建议将
最大线程数
设置为50 ~ 500
,线程开太多会造成搞负载) - 支持通配符匹配路径 通配符-维基百科
- 命(bi)令(ge)行(gao)
安装
得益于 Go 的跨平台编译的特性,BaiduPCS-Go 几乎可以支持所有操作系统,只需要在 Releases 中选取合适的版本下载、运行就可以了
Releases- 下载 BaiduPCS-Go
以 Windows 为例,根据我的电脑 CPU 下载并解压 BaiduPCS-Go-v3.2.1-windows-x86.zip
可以直接双击运行(进入 console 模式)
也可以在命令行中运行
Run BaiduPCS-Go.exe在Android 与 iOS 上安装
在 Android 上安装与在桌面上安装的思路差不多,都是 下载 -> 解压 -> (在命令行中)运行
不同的是 Android 上没有原生的命令行,需要借助 Termux 或 NeoTerm 或 终端模拟器等 APP,以提供终端环境。
详情请参考:Android 运行本 BaiduPCS-Go 程序参考示例
iOS 就比较特殊了,因为 iOS 系统的特殊性,需要越狱后才能提供相应的运行环境。
越狱后,,在 Cydia 搜索下载并安装 MobileTerminal,以提供终端环境。
命令列表
在命令行中,在 BaiduPCS-Go.exe
所在的目录下,使用以下格式输入命令
BaiduPCS-Go [global options] command [command options] [arguments...]
简单的说就是以 BaiduPCS-Go
开头,后面跟具体的命令(参数)。
未带任何其他参数运行程序,,则程序进入 console 模式。(光标前有 BaiduPCS-Go >
的前缀)console 模式下直接输入命令,不需要加 BaiduPCS-Go
的前缀。
登录
既然是第三方百度网盘,肯定要登录百度账号才能使用。
有两种方法可以登录,常规登录 和 BDUSS 登录
常规登陆
直接键入以下命令
BaiduPCS-Go login
然后依次输入 用户名
和 密码
登录成功!
BDUSS 登录
获得 BDUSS 后,用以下命令登录([BDUSS] = 你取得的 BDUSS)
BaiduPCS-Go login -bduss=[BDUSS]
BaiduPCS-Go Login -bduss
获取 当前账号 & 已有的账号
BaiduPCS-Go loglist
loglist
切换已登录的百度帐号
BaiduPCS-Go su -uid=[uid]
BaiduPCS-Go su
请输入要切换帐号的 index 值 >[index 值]
BaiduPCS-Go su
退出已登录的百度帐号
BaiduPCS-Go logout -uid=[uid]
BaiduPCS-Go logout
请输入要退出帐号的 index 值 > [index 值]
BaiduPCS-Go logout
因为我只有一个百度账号,就不演示第二种退出方式了
获取配额(获取网盘总空间 和 已使用空间)
BaiduPCS-Go quota
BaiduPCS-Go quota
文件/目录操作
对 目录、文件的操作与 Linux 命令行相似。
目录、文件名可以使用通配符(*)
切换工作目录
BaiduPCS-Go cd [目录]
输出当前所在目录
BaiduPCS-Go pwd
列出当前工作目录的文件和目录或指定目录
BaiduPCS-Go ls
BaiduPCS-Go ls [目录]
获取单个文件 / 目录的元信息 (详细信息)
BaiduPCS-Go meta [文件/目录]
如果没有指定的目录则默认为 获取根目录的元信息
创建目录
BaiduPCS-Go mkdir [目录]
删除 文件/目录
BaiduPCS-Go rm [文件或目录1] [文件或目录2] [文件或目录3] ...
复制 文件/目录
BaiduPCS-Go cp [文件/目录] [目标 文件/目录]
BaiduPCS-Go cp [文件/目录1] [文件/目录2] [文件/目录3] ... [目标目录]
复制文件/目录时,需确保每个文件/目录的有效性
移动/重命名 文件/目录
# 移动:
BaiduPCS-Go mv <文件/目录1> <文件/目录2> <文件/目录3> ... <目标目录>
# 重命名:
BaiduPCS-Go mv <文件/目录> <重命名的文件/目录>
移动/重命名文件/目录时,需确保每个文件/目录的有效性
下载文件
BaiduPCS-Go download [文件或目录1] [文件或目录2] [文件或目录3]...
BaiduPCS-Go d [文件或目录1] [文件或目录2] [文件或目录3]...
支持同时下载多个文件/目录
下载的文件默认保存到 程序所在目录 的 download
目录下,你可以自定义储存目录
上传文件
BaiduPCS-Go upload [本地文件或目录1] [文件或目录2] ... [网盘的目标目录]
BaiduPCS-Go u [本地文件或目录1] [文件或目录2] ... [网盘的目标目录]
注意:
- 本地的目录要使用
\
转义(两个反斜杠\
) - **区别反斜杠
\
和 斜杠/
**
例如:
# 将本地的 C:\Users\Administrator\Desktop\1.mp4 上传到网盘 /视频 目录
# 本地的目录要使用 "\" 转义(两个反斜杠 "\")
# 注意区别反斜杠 "\" 和 斜杠 "/"
BaiduPCS-Go upload C:\\Users\\Administrator\\Desktop\\1.mp4 /视频
# 将本地的 C:\Users\Administrator\Desktop\1.mp4 和 C:\Users\Administrator\Desktop\2.mp4 上传到网盘 /视频 目录
BaiduPCS-Go upload C:\\Users\\Administrator\\Desktop\\1.mp4 C:\\Users\\Administrator\\Desktop\\2.mp4 /视频
# 将本地的 C:\Users\Administrator\Desktop 整个目录上传到网盘 /视频 目录
BaiduPCS-Go upload C:\\Users\\Administrator\\Desktop /视频
设置
在 BaiduPCS-Go 中,使用以下格式的命令进行设置
BaiduPCS-Go set OptionName Value
翻译一下就是
BaiduPCS-Go set [被设置的项目] [你设置的值]
让我们先来看一下有哪些项目可以被设置
BaiduPCS-Go set -h
BaiduPCS-Go set
简单介绍一下
-
appid
BaiduPCS-Go 的应用ID,一般没必要改 -
user_agent
浏览器标识,用来伪装成正版“百度云管家”的(如果能下载且速度不慢就没必要改) -
cache_size
下载缓存大小,一般没必要改 -
max_parallel
最大线程数 -> 设置最大线程数 -
savedir
下载文件的储存目录 -> 设置自定义储存目录
自定义储存目录
下载文件默认保存在 程序所在目录 的 download
目录下,使用以下命令自定义储存目录
BaiduPCS-Go set savedir [储存目录的路径]
例如:
# 设置保存目录, 保存到 D:\Downloads (注意两个反斜杠 "\" )
BaiduPCS-Go set savedir D:\\Downloads
设置最大线程数
理论上(在没有占满带宽的情况下),线程开得越多下得越快,同时占用资源越多;建议开到 50 ~ 500
(下载速度不仅仅取决于线程数,也取决于带宽大小;如果增加带宽却没有提速,说明瓶颈在带宽上);如果觉得下载文件时电脑运行卡顿,就开小一点。
设置方法
BaiduPCS-Go set max_parallel [最大并发数]
例如:
# 设置下载最大并发数为 150
BaiduPCS-Go set max_parallel 150
退出程序
运行命令 quit
或 exit
或 组合键 Ctrl+C
或 组合键 Ctrl+D
已知问题
- 下载进度到最后的时候,,下载速度会降低。
- 程序的 console 模式在 windows 下部分中文无法正常输入。
参考
本文章参考了:
使用第三方百度网盘是有风险的,如果你因为使用第三方百度网盘导致账号被封,本博客概不负责
原文地址:https://mogeko.github.io/2017/013
欢迎关注我的博客 (・ω・) ノ:Mogeko`s Blog