七牛 qshell 全命令实践
七牛API服务的命名行测试工具,参考文档 七牛开发者中心 命令行工具(qshell)
实践目的
安装本质上是单个命令文件,只要放在环境变量能访问的地方即可。 Mac 版操作步骤如下,其他系统参考 命令行工具(qshell)
account 设置ak、sk配置AK、SK:qshell acount ak sk。配置后在会生成 stat 查看文件状态qshell stat test-pub test/test-fput.mp4 buckets/listbucket/domains/ip/unzip/qetag bucket等通用操作类buckets 获取当前账号下所有的空间名称qshell buckets listbucket 获取test-pub的文件列表qshell listbucket test-pub test-pub-listbucket.txt 获取/mp4开头的文件列表 qshell listbucket test-pub ‘/mp4‘ test-pub-mp4-listbucket.txt domains 获取指定空间的所有关联域名qshell domains test-pub ip 根据淘宝的公开API查询ip地址的地理位置qshell ip 112.74.185.158 unzip 解压zip文件,支持UTF-8编码和GBK编码qshell unzip 1.txt.zip qetag 根据七牛的qetag算法来计算文件的hashqshell qetag ~/Desktop/22222.mp4 fput/rput/qdownload/prefop/qupload 上传下载类fput 以文件表单的方式上传一个文件一般建议如果文件大小超过100MB的话,都使用分片上传rput。 qshell fput test-pub test-fput.mp4 /Users/jingliu/Desktop/test-fput.mp4 前缀,路径,上传入口 覆盖 低频 qshell fput test-pub test/test-fput.ppt /Users/jingliu/Desktop/test-fput.mp4 http://upload.qiniu.com true 1 rput 以分片上传的方式上传一个文件,前缀,路径,上传入口 覆盖 低频qshell rput test-pub test/qiniu-introduce-4M.pdf /Users/jingliu/Desktop/ qshell-test/fput/test-fput.mp4 http://upload.qiniu.com true 1 qdownload 从七牛空间同步数据到本地,支持只同步某些前缀的文件,支持增量同步qshell qdownload 3 config.conf prefop 查询七牛数据处理的结果,通过处理的结果idqshell prefop z0.5b0b8a8538b9f324a5ea1b3a qupload 是用来将本地目录中的文件同步到七牛空间中的命令可以同步父子目录下的所有文件到七牛的对象存储空间中。
mac 示例输入命令 qshell qupload 1 /Users/jingliu/Desktop/config.json 配置文件 { "src_dir" : "/Users/jingliu/Desktop/test-dir","bucket" : "test-pub" } 示例图片 结果展示 win qshell 安装安装qshell和配置环境变量 配置账号密码 上传成功 chgm/copy/move/delete 文件操作类chgm 修改七牛空间中的一个文件的MimeType,文件类型qshell chgm test-pub 11.mp4 video/mov copy 复制七牛空间中的一个文件,可以是 同/不同 一个空间
不同区域,报错400 qshell copy -overwrite test-pub 11.mp4 test-pub1 test-pub/mp4/11.mp4 同区域 qshell copy -overwrite test-pub 11.mp4 test-pub-hd test-pub/mp4/11.mp4 move 移动或重命名七牛 同/不同 空间中的一个文件qshell move -overwrite test-pub 11.mp4 test-pub 22.mp4 qshell move -overwrite test-pub 22.mp4 test-pub-hd test-pub/mp4/22-move.mp4 delete 删除七牛空间中的一个文件qshell delete test-pub-hd test-pub/mp4/22-move.mp4 fetch/sync/prefetch/cdnrefresh 刷新预取类fetch 从Internet上抓取一个资源并存储到七牛空间中适合于中小文件的抓取,根据实际经验,基本上适合50MB以下的文件抓取。 如果指定的Key都是一样的,那么会默认覆盖这个Key所对应的文件。 不指定名称则保存hash值。 功能同接口 第三方资源抓取 qshell fetch https://www.baidu.com/img/bdlogo.png test-pub bpng/dlog.png sync 从Internet上抓取一个资源并存储到七牛空间中适合大文件的场合,比如1G,100G。 sync指令的基本原理是使用Range方式按照4MB一个块从资源服务器获取数据,然后使用七牛支持的分片上传功能直接传到七牛存储空间中。并不用担心网络中断导致的同步中断,因为采用了分片上传的机制,我们会把每一个成功上传的块的位置记录下来,当下次网络恢复的时候,只需要运行原始命令即可从断点处恢复。
UpHostIp #获取,指定ip可减少DNS环节,提升同步速度 华东机房 $ dig up.qiniu.com 华北机房 $ dig up-z1.qiniu.com 华南机房 $ dig up-z2.qiniu.com 北美机房 $ dig up-na0.qiniu.com qshell sync https://www.baidu.com/img/bdlogo.png test-pub bpng/dlog2.png 115.238.101.35 如下图,可见sync不支持覆盖,必须加上https协议(fetch可忽略) prefetch 更新七牛空间中从源站镜像过来的文件配置了镜像存储的空间,在一个文件首次回源源站拉取资源后,就不再回源了。如果源站更新了一个文件,那么这个文件不会自动被同步更新到七牛空间。 同接口文档:镜像资源更新 (prefetch) qshell prefetch test-pub demo/iconfont/miga/iconfont.css qshell prefetch test-pub demo/iconfont/miga/demo.css 下图分别是更新和拉新,效果是一样的 cdnrefresh 批量刷新cdn的访问外链可刷新文件 或 目录。刷新是把cdn节点上的缓存刷新到cdn节点。 注意需要刷新的目录,必须以/结尾。 qshell cdnrefresh torefresh.txt cat torefresh.txt cdnprefetch 批量预取cdn的访问外链可刷新文件 或 目录。预取是把cdn节点上的数据,从源站拉取到cdn节点。 qshell cdnprefetch torefresh.txt b64encode/b64decode/urlencode/urldecode 编码解码类b64encode base64编码工具可选是否使用UrlSafe方式,默认UrlSafe qshell b64encode ‘hello world‘ b64decode base64解码工具可选是否使用UrlSafe方式,默认UrlSafe qshell b64decode aGVsbG8gd29ybGQ= urlencode url编码工具qshell urlencode url带中文 urldecode url解码工具qshell urldecode url%E5%B8%A6%E4%B8%AD%E6%96%87 ts2d/tms2d/d2ts 时间戳日期类ts2d 将timestamp(单位秒)转为UTC+8:00中国日期qshell ts2d 1427252311 主要用来检查上传策略的deadline参数 tms2d 将timestamp(单位毫秒)转为UTC+8:00中国日期qshell tms2d 1427252311000 d2ts(useless) 该命令用来生成一个Unix时间戳(单位秒)值是当前时间加上指定的秒数的和。如果可以设置指定时间就好了。 qshell d2ts 3600 qshell d2ts -3600 saveas/reqid/batchsign/privateurl/batchdelete/batchchgm/m3u8delete 其他(批量,私有外链)saveas 实时处理的saveas链接快捷生成工具reqidbatchsign 批量根据资源的公开外链生成资源的私有外链privateurl 生成私有空间资源的访问外链batchdeletebatchchgm 还支持批量copy,renamem3u8delete 根据流媒体播放列表文件删除七牛空间中的流媒体切片(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |