七牛云测试域名失效后如何下载空间中的文件

2018年11月9日08:00:25 发表评论 23

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

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

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

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

七牛云测试域名失效后如何下载空间中的文件

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

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

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

  1. ./qrsctl buckets

可以看到,我有三个bucket:

七牛云测试域名失效后如何下载空间中的文件

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

七牛云测试域名失效后如何下载空间中的文件

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

七牛云测试域名失效后如何下载空间中的文件

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

  1. ./qrsctl listprefix outmusic ''

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

七牛云测试域名失效后如何下载空间中的文件

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

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

  1. qrsctl get <Bucket> <Key> <DestFile>
  2. eg:
  3. ./qrsctl get outmusic yongqi.mp3 ./yongqi.mp3

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

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

  1. #!/bin/bash
  2. files=`./qrsctl listprefix outmusic ''`
  3. i=0
  4. echo $files | tr " " "\n" | while read line
  5. do
  6.     if(($i>0))
  7.     then
  8.         echo $line
  9.         ./qrsctl get outmusic $line ./$line
  10.     fi
  11.     i=$(($i+1))
  12. done

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

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

吴蛋蛋

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: