|
| 1 | +--- |
| 2 | +layout: docs |
| 3 | +title: qshell 命令行工具 |
| 4 | +--- |
| 5 | + |
| 6 | +# qshell |
| 7 | + |
| 8 | +- [简介](#overview) |
| 9 | +- [下载](#download) |
| 10 | +- [使用方法](#usage) |
| 11 | +- [使用详解](#detailed) |
| 12 | +- [编译](#compile) |
| 13 | + |
| 14 | + |
| 15 | +<a id="overview"></a> |
| 16 | +## 简介 |
| 17 | + |
| 18 | +qshell是利用[七牛文档上公开的API](http://d.qiniu.com)实现的一个方便开发者测试和使用七牛API服务的命令行工具。 |
| 19 | + |
| 20 | +<a id="download"></a> |
| 21 | +## 下载 |
| 22 | + |
| 23 | + |
| 24 | +|版本 |支持平台|链接|更新日志| |
| 25 | +|--------|---------|----|------| |
| 26 | +|qshell v1.4.9|Linux, Windows, Mac OSX|[下载](http://devtools.qiniu.com/qshell-v1.4.9.zip)|[查看](https://github.com/qiniu/qshell/blob/master/CHANGELOG.md)| |
| 27 | + |
| 28 | +因为上面发布的zip包里面有支持不同平台的可执行文件,请根据系统平台选择合适的可执行文件,然后其他的都可以删除,再把可执行文件重命名为 `qshell` (Windows下面是 `qshell.exe`然后就可以使用了) |
| 29 | + |
| 30 | +另外,由于本工具是一个命令行工具,在Windows下面请先打开命令行终端,然后输入工具名称执行,不要双击打开。如果你希望可以在任意目录下使用qshell,请将qshell工具可执行文件所在目录添加到系统的环境变量中。 |
| 31 | + |
| 32 | +<a id="usage"></a> |
| 33 | +## 使用方法 |
| 34 | +我们知道调用七牛的API需要一对`AccessKey`和`SecretKey`,这个可以从七牛的后台的账号设置->[密钥](https://portal.qiniu.com/setting/key)获取。 |
| 35 | + |
| 36 | +首先要使用七牛的API,必须先设置`AccessKey`和`SecretKey`。命令如下: |
| 37 | +``` |
| 38 | +qshell account ELUs327kxVPJrGCXqWae9yioc0xYZyrIpbM6Wh6o LVzZY2SqOQ_I_kM1n00ygACVBArDvOWtiLkDtKi_ |
| 39 | +``` |
| 40 | +上面的`ELUs327kxVPJrGCXqWae9yioc0xYZyrIpbM6Wh6o`就是你的`AccessKey`,而`LVzZY2SqOQ_I_kM1n00ygACVBArDvOWtiLkDtKi_`就是你的`SecretKey`。如果你想查看当前的`AccessKey`和`SecretKey`设置,使用命令: |
| 41 | + |
| 42 | +``` |
| 43 | +qshell account |
| 44 | +``` |
| 45 | +上面的命令会输出当前你设置好的`AccessKey`和`SecretKey`。 |
| 46 | +接下来,我们就可以放心地使用七牛的API功能了。 |
| 47 | + |
| 48 | +<a id="detailed"></a> |
| 49 | +## 使用详解 |
| 50 | + |
| 51 | +|命令|描述|详细| |
| 52 | +|------|----------|--------| |
| 53 | +|account|设置或显示当前用户的AccessKey和SecretKey|[文档](http://github.com/jemygraw/qshell/wiki/account)| |
| 54 | +|dircache|输出本地指定路径下所有的文件列表|[文档](http://github.com/jemygraw/qshell/wiki/dircache)| |
| 55 | +|listbucket|列举七牛空间里面的所有文件|[文档](http://github.com/jemygraw/qshell/wiki/listbucket)| |
| 56 | +|alilistbucket|列举阿里OSS空间里面的所有文件|[文档](http://github.com/jemygraw/qshell/wiki/alilistbucket)| |
| 57 | +|prefop|查询七牛数据处理的结果|[文档](http://github.com/jemygraw/qshell/wiki/prefop)| |
| 58 | +|fput|以文件表单的方式上传一个文件|[文档](http://github.com/jemygraw/qshell/wiki/fput)| |
| 59 | +|rput|以分片上传的方式上传一个文件|[文档](http://github.com/jemygraw/qshell/wiki/rput)| |
| 60 | +|qupload|同步数据到七牛空间, 带同步进度信息,和数据上传完整性检查|[文档](http://github.com/jemygraw/qshell/wiki/qupload)| |
| 61 | +|qdownload|从七牛空间同步数据到本地,支持只同步某些前缀的文件,支持增量同步|[文档](http://github.com/jemygraw/qshell/wiki/qdownload)| |
| 62 | +|stat|查询七牛空间中一个文件的基本信息|[文档](http://github.com/jemygraw/qshell/wiki/stat)| |
| 63 | +|delete|删除七牛空间中的一个文件|[文档](http://github.com/jemygraw/qshell/wiki/delete)| |
| 64 | +|move|移动或重命名七牛空间中的一个文件|[文档](http://github.com/jemygraw/qshell/wiki/move)| |
| 65 | +|copy|复制七牛空间中的一个文件|[文档](http://github.com/jemygraw/qshell/wiki/copy)| |
| 66 | +|chgm|修改七牛空间中的一个文件的MimeType|[文档](http://github.com/jemygraw/qshell/wiki/chgm)| |
| 67 | +|fetch|从Internet上抓取一个资源到七牛空间中|[文档](http://github.com/jemygraw/qshell/wiki/fetch)| |
| 68 | +|prefetch|更新七牛空间中从源站镜像过来的文件|[文档](http://github.com/jemygraw/qshell/wiki/prefetch)| |
| 69 | +|batchdelete|批量删除七牛空间中的文件,可以直接根据`listbucket`的结果来删除|[文档](http://github.com/jemygraw/qshell/wiki/batchdelete)| |
| 70 | +|batchchgm|批量修改七牛空间中文件的MimeType|[文档](http://github.com/jemygraw/qshell/wiki/batchchgm)| |
| 71 | +|batchcopy|批量复制七牛空间中的文件到另一个空间|[文档](http://github.com/jemygraw/qshell/wiki/batchcopy)| |
| 72 | +|batchmove|批量移动七牛空间中的文件到另一个空间|[文档](http://github.com/jemygraw/qshell/wiki/batchmove)| |
| 73 | +|batchrename|批量重命名七牛空间中的文件|[文档](http://github.com/jemygraw/qshell/wiki/batchrename)| |
| 74 | +|checkqrsync|检查qrsync的同步结果,主要通过比对`dircache`和`listbucket`的结果|[文档](http://github.com/jemygraw/qshell/wiki/checkqrsync)| |
| 75 | +|b64encode|base64编码工具,可选是否使用UrlSafe方式,默认UrlSafe|[文档](http://github.com/jemygraw/qshell/wiki/b64encode)| |
| 76 | +|b64decode|base64解码工具,可选是否使用UrlSafe方式,默认UrlSafe|[文档](http://github.com/jemygraw/qshell/wiki/b64decode)| |
| 77 | +|urlencode|url编码工具|[文档](http://github.com/jemygraw/qshell/wiki/urlencode)| |
| 78 | +|urldecode|url解码工具|[文档](http://github.com/jemygraw/qshell/wiki/urldecode)| |
| 79 | +|ts2d|将timestamp(单位秒)转为UTC+8:00中国日期,主要用来检查上传策略的deadline参数|[文档](http://github.com/jemygraw/qshell/wiki/ts2d)| |
| 80 | +|tms2d|将timestamp(单位毫秒)转为UTC+8:00中国日期|[文档](http://github.com/jemygraw/qshell/wiki/tms2d)| |
| 81 | +|tns2d|将timestamp(单位100纳秒)转为UTC+8:00中国日期|[文档](http://github.com/jemygraw/qshell/wiki/tns2d)| |
| 82 | +|d2ts|将日期转为timestamp(单位秒)|[文档](http://github.com/jemygraw/qshell/wiki/d2ts)| |
| 83 | +|ip|根据淘宝的公开API查询ip地址的地理位置|[文档](http://github.com/jemygraw/qshell/wiki/ip)| |
| 84 | +|qetag|根据七牛的qetag算法来计算文件的hash|[文档](http://github.com/jemygraw/qshell/wiki/qetag)| |
| 85 | +|unzip|解压zip文件,支持UTF-8编码和GBK编码|[文档](http://github.com/jemygraw/qshell/wiki/unzip)| |
| 86 | +|privateurl|生成私有空间资源的访问外链|[文档](http://github.com/jemygraw/qshell/wiki/privateurl)| |
| 87 | +|saveas|实时处理的saveas链接快捷生成工具|[文档](http://github.com/jemygraw/qshell/wiki/saveas)| |
| 88 | +|reqid|七牛自定义头部X-Reqid解码工具|[文档](http://github.com/jemygraw/qshell/wiki/reqid)| |
| 89 | +|m3u8delete|根据流媒体播放列表文件删除七牛空间中的流媒体切片|[文档](http://github.com/jemygraw/qshell/wiki/m3u8delete)| |
| 90 | +|buckets|获取当前账号下所有的空间名称|[文档](http://github.com/jemygraw/qshell/wiki/buckets)| |
| 91 | +|domains|获取指定空间的所有关联域名|[文档](http://github.com/jemygraw/qshell/wiki/domains)| |
| 92 | + |
| 93 | +<a id="compile"></a> |
| 94 | +## 编译 |
| 95 | +1. 如果是编译本地平台的可执行程序,使用`src`目录下面的`build.sh`脚本即可。 |
| 96 | +2. 如果是编译跨平台的可执行程序,使用`src`目录下面的`gox_build.sh`脚本即可。该脚本使用了[gox](https://github.com/mitchellh/gox)工具,请 |
| 97 | +使用`go get github.com/mitchellh/gox`安装。 |
0 commit comments