Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/amazon-web-services/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/amazon-s3/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Amazon web services Get-S3Object是否返回keyprefix(文件夹)本身?_Amazon Web Services_Amazon S3_Aws Sdk - Fatal编程技术网

Amazon web services Get-S3Object是否返回keyprefix(文件夹)本身?

Amazon web services Get-S3Object是否返回keyprefix(文件夹)本身?,amazon-web-services,amazon-s3,aws-sdk,Amazon Web Services,Amazon S3,Aws Sdk,我使用S3 Powershell api(Get-S3Object)从S3检索文件,问题是api的工作方式很奇怪 我首先运行以下命令: Get-S3Object -BucketName "tools-bucket" -keyprefix "Rollback/ust1twastool01a" 它返回以下列表: ETag : "d41d8cd98f00b204e9800998ecf8427e" Key : Rollback/ust1twastool01a/ La

我使用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本身,它是一个文件夹。然后,我使用另一个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

这一次,不会返回keyprefix。我不太明白为什么会发生这种情况

在控制台中创建文件夹时通常会发生这种情况。它们是占位符。除非您需要手动导航到文件夹以上载对象,否则不需要它们。您的解决方法是跳过以
/
结尾的零字节对象


这通常发生在您在控制台中创建文件夹时。它们是占位符。除非您需要手动导航到文件夹以上载对象,否则不需要它们。您的解决方法是跳过以
/
结尾的零字节对象


谢谢你的解释,我找到了一个解决办法,但很好奇谢谢你的解释,我找到了一个解决办法,但很好奇