很多时候我们需要和其他人分享Linux上的数据,如果对方也有大型机,可以通过scp方便传输,但是对方如果只在百度网盘上方便接收,这时候如果下载数据再传输到云盘里去,会显得很麻烦。因此如果有命令能够实现两者之间的传输会带来很大的方便,bpcs_uploader恰好能够实现这个功能。
是不是很激动,Linux竟然还可以和百度云盘建立连接,是不是跃跃欲试了呢,快跟着我来一步一步操作学习吧。

安装bpcs_uploader
- 下载程序包:
wget https://github.com/oott123/bpcs_uploader/zipball/master
- 解压
unzip master
然后可以在该文件夹下面看见一个名为 oott123-bpcs_uploader-a37ef07 的文件夹。
- 重新命名文件夹
mv oott123-bpcs_uploader-3a33d09 baidu
然后就能看见这个文件夹变为baidu。
- 设置权限并运行程序
chmod +x bpcs_uploader.php和./bpcs_uploader.php

输入./bpcs_uploader.php和./bpcs_uploader.php quota效果都是一样,会出现一行蓝色的整体,并出现continue?[y/N]。这里我们选择y,然后出现以下页面。
这里需要我们提供API key的密码,如果有就填写,没有就用临时的密码(即输入回车)。这里临时的API KEY ,30天之后会过期的,如果有自己的API KEY就好些,但基于普通用户也懒得去创建,固定用户用起来就会好。回车之后就会显示让您在浏览器打开并输入授权码。
- 授权
输入回车之后,会出现这个页面:

输入这个网站,然后输入这个验证码,即可授权成功,然后回到这个页面输入回车,之后的页面显示为:

因为我在这里的输入的./bpcs_uploader.php quota,quota是查询网盘容量,因此会出现这个页面,但是只要出现enjoy一般都没有问题了,然后可以百度云盘上有 我的应用数据/bpcs_uploader 。
- 如果之前安装过后,可以执行初始化
./bpcs_uploader.php init
bpcs_uploader用法
- 查询容量
./bpcs_uploader.php quota
- 上传文件
./bpcs_uploader.php upload [path_local] [path_remote]
Path_local指的是linux中的文件,path_remote指的是网盘里面的文件。比如要把/home/u/xxx/123.txt,上传到云盘中,则命令写为:
./bpcs_uploader.php upload /home/u/xxx/123.txt /123.txt
注:*上传到云盘的文件一定要给名字,比如123.txt,就表示传到云盘里面的文件仍然是交123.txt,如果写为/1.txt,就表示文件改名为1.txt。这里的/表示是在 我的应用数据/bpcs_uploader目录下
** 该上传功能,目前只能上传文件,貌似不能上传文件夹。
- 下载文件
./bpcs_uploader.php download [path_local] [path_remote]
- 复制文件
./bpcs_uploader.php dirdown [path_local] [path_remote]
把所有的文件从百度网盘复制到linux上,如果把dirdown改为folderdown还能直接复制整个文件夹,很方便。
- 删除文件
./bpcs_uploader.php delete [path_remote]
- 离线下载
./bpcs_uploader.php fetch [path_remote] [path_to_fetch]
更多具体的功能可以通过./bpcs_uploader.php –help 来查看。
自动备份脚本
- 下载脚本到该目录下
wget http://www.huihuige.com/wp-content/uploads/2013/10/baidubd.zip
- 解压
unzip baidubd.zip
- 测试脚本是否有效
sh baidubd.sh
- 设置计划任务
crontab –e
0 0 * * * /root/baidu/baidubd.sh
这样每天凌晨零点自动备份数据到百度云盘。
关注“happy科研”公众号和CSDN博客(ID:weixin_44267600),获取更多有趣有料的干货。
有任何问题,请发邮件至:yfangnuist@gmail.com