前段时间一直收到七牛云回收测试域名的邮件,由于比较忙一直没有时间搭理。结果在回过神来的时候发现外链统统失效了,并且还不能下载。

在查阅了相关资料时发现有qshell和qrsctl两种办法,因为不想再申请七牛云的空间了,所以选择了使用qrsctl下载七牛云空间中的文件。

首先下载qrsctl这个工具,我使用的是Mac电脑所以下载Mac版本的。

下载后的文件将其改名为qrsctl,chmod +x qrsctl 赋予可执行权限。直接在terminal中运行./qrsctl会出现相应说明文档,如下图:

说明文档

按照下面的指令,输入自己七牛云的账号和密码登录,这个登陆的有效期是3600秒,就是一个小时。

./qrstcl login <your username> <your password>

接下来,我们列出我们所有的空间(buckets):

./qrsctl buckets

可以看到,我有三个bucket:

所有空间

不放心,登陆七牛云后台看一下:

七牛云后台结果

匹配上了!现在看看我这个outmusic下有哪些文件:

outmusic下的文件

OK,现在我们通过命令行看看是否匹配:

./qrsctl listprefix outmusic ''

注意:最后是两个英文单引号。

终端结果

显示的内容跟七牛云网页端的是一样的,当然要注意第一行是七牛云自带的一个标志字符串"marker:"。

得到图片名后,可以通过七牛云的如下命令下载一个文件。

qrsctl get

eg:

./qrsctl get outmusic yongqi.mp3 ./yongqi.mp3

就可以将outmusic中的yongqi.mp3下载到电脑当前路径下,保存成的yongqi.mp3,当然也可以改成其他名字。

以上几步综合起来,我们就可以通过批处理把所有内容下载到本地了。

#!/bin/bash
files=`./qrsctl listprefix outmusic ''`
i=0
echo $files | tr " " "\n" | while read line
do
if(($i>0))
then
echo $line
./qrsctl get outmusic $line ./$line
fi
i=$(($i+1))
done

把以上的代码保存成.sh文件,比如down.sh。在终端里赋权后运行,就可以批量下载了。

Linux也可以参考这个的脚本代码,但是Windows不行,这个脚本是sh文件,Windows下不能直接执行,还是想其他办法执行吧。

最后修改:2018 年 11 月 09 日
如果觉得我的文章对你有用,请随意赞赏