更新时间:2022-09-29 GMT+08:00
使用obsutil实现目录分享
目录分享允许桶的拥有者将桶的目录或者整个桶以授权码+提取码的形式分享给其他用户。获取到授权码和提取码的用户,可以在授权码的有效期内通过OBS提供的工具(OBS Browser、obsutil),或者直接在浏览器上输入授权码进行对象的列举和下载。
obsutil提供了三个命令用于实现目录分享的功能,具体步骤如下:
- 使用obsutil create-share命令创建目录分享的授权码。例如分享桶名为bucket的test目录并设置提取码为123456,有效期为10天的命令为:
obsutil create-share obs://bucket/test/ -ac=123456 -vp=10d
- 建议创建授权码时,待分享的目录总是以“/”结尾,如果没有传入待分享的目录(例如上述命令中传入obs://bucket),则表示分享整个桶。
- 如果未使用ac选项设置提取码,obsutil工具会以交互模式提示输入提取码,且提取码必须为6位。
- 更多该命令的使用细节,请参考创建目录分享的授权码。
- 使用obsutil share-ls命令根据授权码和提取码列举桶内对象。例如使用授权码列举桶内test目录下的前100个对象的命令为:
obsutil share-ls file://d:/authorizationCode.txt -ac=123456 -prefix=test/ -limit=100
- 如果prefix选项未设置,则默认列举授权码中授权路径下的所有对象;否则,prefix选项必须是授权码中授权路径的子集。
- 更多该命令的使用细节,请参考授权码列举对象。
- 使用obsutil share-cp命令根据授权码和提取码下载桶内对象。例如使用授权码将桶内test目录的sub子目录下所有对象下载到当前本地目录的命令为:
obsutil share-cp file://d:/authorizationCode.txt ./ -ac=123456 -key=test/sub/ -r -f
更多该命令的使用细节,请参考授权码下载对象。
- 您还可以使用OBS Console或OBS Browser创建授权码后,再使用obsutil列举和下载对象。
- 您也可以使用obsutil创建授权码后,直接在浏览器地址栏上输入,或通过OBS Browser的授权码登录功能进行对象的列举和下载。
父主题: 最佳实践