流水线中oss上传
如何设置整个文件夹中文件的meta,而不是需要区分文件名后缀后分开设置
可以设置整个文件夹中文件的meta
将后缀名key设置为* 或空都不行
您好,针对您提到的流水线中OSS上传时如何设置整个文件夹中文件的meta的问题,建议您可以使用以下两种方式来实现:
Copy Code$ ossutil -e oss-cn-hangzhou.aliyuncs.com -i <AccessKeyId> -k <AccessKeySecret> \
set-meta --recursive --meta x-oss-meta-key:value oss://example-bucket/dir/
其中,--recursive参数表示递归处理整个目录下的所有文件;--meta参数表示要设置的Meta信息;oss://example-bucket/dir/表示要进行操作的OSS存储空间及目录。
javaCopy CodeObjectListing objectListing = ossClient.listObjects(bucketName, folderName);
List<OSSObjectSummary> sums = objectListing.getObjectSummaries();
for (OSSObjectSummary s : sums) {
ObjectMetadata meta = ossClient.getObjectMetadata(bucketName, s.getKey());
String contentType = meta.getContentType();
meta.addUserMetadata("x-oss-meta-key", "value");
ossClient.copyObject(bucketName, s.getKey(), bucketName, s.getKey(),
new CopyObjectRequest(meta).withSourceBucketName(bucketName)
.withSourceKey(s.getKey()));
}
以上是两种常用的方式,您可以根据自身需求选择相应的方法进行操作。希望能对您有所帮助!
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
云效,企业级一站式研发协同平台,数十万企业都在用。支持公共云、专有云和混合云多种部署形态,通过云原生新技术和研发新模式,助力创新创业和数字化转型企业快速实现研发敏捷和组织敏捷,打造“双敏”组织,实现多倍效能提升。