阅读786 返回首页    go iPhone_iPad_Mac_apple


ossutil__常用工具_对象存储 OSS-阿里云

ossutil工具旨在为用户提供一个方便的,以命令行方式管理OSS数据的途径。当前版本未提供Bucket管理功能和Multipart管理功能,相关功能会在后续版本中开发。现在如果有使用上述功能的需要,可以先使用osscmd命令行工具。

工具下载

当前版本

  • 当前版本:1.0.0.Beta1

版本更新提示

该版本相对于版本1.0.0.Beta为不兼容性修改。

  • 不兼容性修改1.命令名称风格改变,setacl变成set-acl,setmeta变成set-meta。2.选项名风格改变,下划线变成中划线。3.—routines选项更名为—jobs。4.去除—man选项。5.语言选项合法值由:中文/English,变更为CH/EN,如果您的配置文件中有language选项,并且其配置为English,请变更为EN。

  • 其他修改1.所有命令除additional command都支持命令行指定endpoint, AccessKeyID, AccessKeySecret, STSToken。2.增加hash命令。3.显示时间由UTC时间转换为本地时间。4.Windows下cp的分隔符bug修复,用/替换目录的,解决浏览器不认识url的问题。5.修复名称中含有特殊字符的object,在bucket间拷贝出错问题。6.cp操作对单文件支持并发数的设定。7.新上传文件支持crc64校验。

运行环境

  • Linux
  • Windows
  • Mac

binary下载

快速使用

获取命令列表

./ossutil./ossutil help

  1. $./ossutil
  2. Usage: ossutil [command] [args...] [options...]
  3. Commands:
  4. mb url [options]
  5. 创建Bucket
  6. ls [url] [options]
  7. 列举Buckets或者Objects
  8. rm url [options]
  9. 删除Bucket或Objects
  10. stat url [options]
  11. 显示bucket或者object的描述信息
  12. set-acl url [acl] [options]
  13. 设置bucket或者objects的acl
  14. set-meta url [meta] [options]
  15. 设置已上传的objects的元信息
  16. cp src_url dest_url [options]
  17. 上传,下载或拷贝Objects
  18. Additional Commands:
  19. help [command]
  20. 获取命令的帮助文档
  21. config [options]
  22. 创建配置文件用以存储配置项
  23. hash file_url [options]
  24. 计算本地文件的crc64或md5
  25. update [options]
  26. 更新ossutil

查看某命令的帮助文档

./ossutil help cmd强烈建议在使用某命令前先使用help来查阅帮助文档。

  1. $./ossutil help ls
  2. SYNOPSIS
  3. 列举Buckets或者Objects
  4. SYNTAX
  5. ossutil ls [oss://bucket[/prefix]] [-s] [-d] [-c file]
  6. DETAIL DESCRIPTION
  7. 该命令列举指定身份凭证下的buckets,或该身份凭证下对应endpoint的objects。默认显示
  8. 长格式,ossutil在列举buckets或者objects的同时展示它们的一些附加信息。如果指定了
  9. --short-format选项,则显示精简格式。
  10. 对于用户使用multipart方式上传且未complete的object,ossutil在显示objects或者目录时,
  11. 不会显示这些objects。(关于multipart的更多信息请查看oss官网API文档。)
  12. 用法:
  13. 该命令有两种用法:
  14. 1) ossutil ls [oss://] [-s]
  15. 如果用户列举时缺失url参数,则ossutil获取用户的身份凭证信息(从配置文件中读取),
  16. 并列举该身份凭证下的所有buckets,并显示每个bucket的最新更新时间和位置信息。如果指定
  17. 了--short-format选项则只输出bucket名称。该用法不支持--directory选项。
  18. 2) ossutil ls oss://bucket[/prefix] [-s] [-d]
  19. 该用法列举指定bucket下的objects(如果指定了前缀,则列举拥有该前缀的objects),同时
  20. 展示了object大小,最新更新时间和etag,但是如果指定了--short-format选项则只输出object名
  21. 称。如果指定了--directory选项,则返回指定bucket下以指定前缀开头的首级目录下的文件和子
  22. 目录,但是不递归显示所有子目录,此时默认为精简格式。
  23. SAMPLE
  24. 1)ossutil ls -s
  25. oss://bucket1
  26. oss://bucket2
  27. oss://bucket3
  28. Bucket Number is: 3
  29. 2)ossutil ls oss:// -s
  30. oss://bucket1
  31. oss://bucket2
  32. oss://bucket3
  33. Bucket Number is: 3
  34. 3)ossutil ls oss://bucket1 -s
  35. oss://bucket1/obj1
  36. oss://bucket1/dir1/obj11
  37. Object Number is: 2
  38. 4)ossutil ls oss://bucket1
  39. LastModifiedTime Size(B) ETAG ObjectName
  40. 2016-04-08 14:50:47 +0000 UTC 6476984 4F16FDAE7AC404CEC8B727FCC67779D6 oss://bucket1/obj1
  41. 2015-06-05 14:06:29 +0000 UTC 201933 7E2F4A7F1AC9D2F0996E8332D5EA5B41 oss://bucket1/dir1/obj11
  42. Object Number is: 2
  43. 5)ossutil ls oss://bucket1 -d
  44. oss://bucket1/obj1
  45. oss://bucket1/dir1
  46. Object or Directory Number is: 2
  47. OPTIONS
  48. -s, --short-format
  49. 显示精简格式,如果未指定该选项,默认显示长格式。
  50. -d, --directory
  51. 返回当前目录下的文件和子目录,而非递归显示所有子目录下的所有object
  52. -c, --config-file
  53. ossutil工具的配置文件路径,ossutil启动时从配置文件读取配置,在config命令中,ossutil将配置写入该文件。
  54. -e, --endpoint
  55. ossutil工具的基本endpoint配置(该选项值会覆盖配置文件中的相应设置),注意其必须为一个二级域名。
  56. -i, --access-key-id
  57. 访问oss使用的AccessKeyID(该选项值会覆盖配置文件中的相应设置)。
  58. -k, --access-key-secret
  59. 访问oss使用的AccessKeySecret(该选项值会覆盖配置文件中的相应设置)。
  60. -t, --sts-token
  61. 访问oss使用的STSToken(该选项值会覆盖配置文件中的相应设置),非必须设置项。
  62. --retry-times=3
  63. 当错误发生时的重试次数,默认值:3,取值范围:1-500

配置ossutil

./ossutil config

  1. $./ossutil config
  2. 该命令创建将一个配置文件,在其中存储配置信息。
  3. 请输入配置文件路径(默认为:/home/admin/.ossutilconfig,回车将使用默认路径):

列举Buckets

./ossutil ls./ossutil ls oss://

  1. $./ossutil ls
  2. CreationTime Region BucketName
  3. 2016-10-21 16:18:37 +0800 CST oss-cn-hangzhou oss://go-sdk-test-bucket-xyz-for-object
  4. 2016-12-01 15:06:21 +0800 CST oss-cn-hangzhou oss://ossutil-test
  5. 2016-07-18 17:54:49 +0800 CST oss-cn-hangzhou oss://ossutilconfig
  6. 2016-07-20 10:36:24 +0800 CST oss-cn-hangzhou oss://ossutilupdate
  7. 2016-11-14 13:08:36 +0800 CST oss-cn-hangzhou oss://yyyyy
  8. 2016-08-25 09:06:10 +0800 CST oss-cn-hangzhou oss://ztzt
  9. 2016-11-21 21:18:39 +0800 CST oss-cn-hangzhou oss://ztztzt
  10. Bucket Number is: 7
  11. 0.252174(s) elapsed

列举Objects

./ossutil ls oss://bucket

  1. $./ossutil ls oss://ossutil-test
  2. LastModifiedTime Size(B) ETAG ObjectName
  3. 2016-12-01 15:06:37 +0800 CST 10363812 61DE142E5AFF9A6748707D4A77BFBCFB oss://ossutil-test/a1
  4. 2016-12-01 15:06:42 +0800 CST 10363812 61DE142E5AFF9A6748707D4A77BFBCFB oss://ossutil-test/a2
  5. 2016-12-01 15:06:45 +0800 CST 10363812 61DE142E5AFF9A6748707D4A77BFBCFB oss://ossutil-test/a3
  6. Object Number is: 3
  7. 0.007379(s) elapsed

上传文件

./ossutil cp localfile oss://bucket

  1. $./ossutil cp a oss://ossutil-test
  2. Succeed: scanned 1 files or directories, dealed 1 files or directories(upload 1 files, 0 directories, skip 0 files).
  3. 0.699795(s) elapsed
  1. $./ossutil cp -r dir oss://ossutil-test
  2. Succeed: scanned 12 files or directories, dealed 12 files or directories(upload 9 files, 3 directories, skip 0 files).
  3. 0.896320(s) elapsed

删除Bucket

./ossutil rm oss://bucket -rfb

  1. $./ossutil rm oss://ossutil-test -rfb
  2. scaned 16 objects, removed 16 objects.
  3. removed bucket: ossutil-test.
  4. 0.875690(s) elapsed

其它

请使用./ossutil help cmd来查看想要使用的命令的帮助文档。

最后更新:2016-12-06 15:53:22

  上一篇:go 第三方工具推荐__常用工具_对象存储 OSS-阿里云
  下一篇:go 图片URL规则__接入图片服务_老版图片服务手册_对象存储 OSS-阿里云