Get-S3Object返回密钥前缀(文件夹)本身



我使用S3 Powershell api (Get-S3Object)从S3检索文件,问题是api以一种奇怪的方式工作。

我先运行以下命令:

 Get-S3Object -BucketName "tools-bucket" -keyprefix "Rollback/ust1twastool01a"

返回如下列表:

ETag         : "d41d8cd98f00b204e9800998ecf8427e"
Key          : Rollback/ust1twastool01a/
LastModified : 11/7/2016 3:24:13 PM
Owner        : Amazon.S3.Model.Owner
Size         : 0
StorageClass : STANDARD
ETag         : "e0ada177422c1fe4d9bd9801636f4e8a"
Key          : Rollback/ust1twastool01a/Rollback_Kit.txt
LastModified : 11/7/2016 3:25:00 PM
Owner        : Amazon.S3.Model.Owner
Size         : 626
StorageClass : STANDARD

第一个是keyprefix本身,它是一个文件夹。然后我用另一个键前缀运行命令:

Get-S3Object -BucketName "tools-bucket" -keyprefix "Rollback/autopatch"

返回如下:

ETag         : "4c3723148b9fb78d5b182c72aa6f1866-62"
Key          : Rollback/autopatch/2016-08-30_21-15-17_server-1.1.20558_client-1.1.20518.zip
LastModified : 8/30/2016 5:18:43 PM
Owner        : Amazon.S3.Model.Owner
Size         : 323772907
StorageClass : STANDARD
ETag         : "bfc65b2cde2c3f24a2086ca503270a54"
Key          : Rollback/autopatch/buildRecords.txt
LastModified : 8/30/2016 5:19:44 PM
Owner        : Amazon.S3.Model.Owner
Size         : 53
StorageClass : STANDARD

这次,不返回密钥前缀。我不太明白为什么会这样

这通常发生在您在控制台中创建文件夹时。他们占位符。它们是不需要的,除非你需要手动导航"进入"一个文件夹来上传对象。你的解决方法是跳过以零字节对象/结尾的对象。

http://docs.aws.amazon.com/AmazonS3/latest/UG/about-using-console.html welcome-folder-concept

相关内容

最新更新