七牛云批量操作简述

为了方便管理七牛云,官方放出了一个工具-qshell

qshell是利用七牛文档上公开的API实现的一个方便开发者测试和使用七牛API服务的命令行工具。

使用qshell可以方便的进行批量操作,包括批量上传、批量下载、批量删除等等……

首先,从http://devtools.qiniu.com/qshell-v2.0.5.zip下载官方提供的qshell,里面包含多个平台。

  • qshell_linux_386 Linux 32位系统
  • qshell_linux_amd64 Linux 64位系统
  • qshell_linux_arm Linux ARM CPU
  • qshell_windows_386.exe Windows 32位系统
  • qshell_windows_amd64.exe Windows 64位系统
  • qshell_darwin_386 Mac 32位系统,这种系统很老了
  • qshell_darwin_amd64 Mac 64位系统,主流的系统

解压后,将对应的版本软件放到自定义目录

在此以windows版实例操作

帐号设置

使用qshell前,需要进行帐号验证,可以通过qshell account ak sk格式来进行验证,其中aksk对应个人面板->密匙管理中的AccessKey/SecretKey

qshell account  yW!DRel0y8ERbjw%so^?X8  6pfC4OlL$TZtjpNuR4bLxRsD

设置完成后,可以通过qshell account来查看已设置帐号详情

qshell account
AccessKey:yW!DRel0y8ERbjw%so^?X8
SecretKey:6pfC4OlL$TZtjpNuR4bLxRsD

设置完帐号后,我们就可以使用qshell对帐号对应的空间进行操作

列出当前帐号下所有空间

qshell buckets
cname

cname为空间名

列出空间中所有文件

qshell listbucket  cname cname.list.txt

cname为空间名,cname.list.txt为结果输出文件。

批量上传

qshell qupload up.cfg

up.cfg上传操作配置文件,如下:

{
"src_dir" : "D:\\abc",
"bucket" : "cname"
}

src_dir为本地文件夹,Wdinwos下必须使用如上格式

bucket为空间名

以上配置文件意思将本地D盘下abc文件夹内的所有内容上传到名为cname的空间

批量下载

qshell qdownload  dl.cfg

dl.cfg下载操作配置文件,如下:

{
    "dest_dir"   :   "./dldoc",
    "bucket"     :   "cname",
    "prefix"     :   "",
    "suffixes"   :   ""
}

dest_dir为本地目录,bucket为空间名,prefix前缀过滤,suffixes后缀过滤

以上配置文件可以将cname空间中的所有内容下载到当前目录下的dldoc文件夹

可以通过设置prefixsuffixes来过滤具体目录或文件类型

批量删除

qshell listbucket cname cname.list.txt
qshell batchdelete -force cname cname.list.txt

第一行获取cname下所有文件,输出清单到cname.list.txt

第二行根据cname.list.txt清单来删除cname中所有内容。

以上只是一些简单的操作示例,qshell功能远非如此,其他具体的使用可参考官方文档

https://github.com/qiniu/qshell