2011-03-28 65 views

回答

12

對象未水桶本身

桶不能包含其他桶。你的意思是文件夾? S3也沒有文件夾的概念。

每個S3帳戶可以有100個存儲桶,每個存儲桶可以包含無限數量的對象/文件。如果您使用文件名中的/來命名文件,那麼AWS GUI工具(例如AWS Console,BucketExplorer等)會將每個部分解釋爲虛擬文件夾。例如

名爲folder1/folder2/myfile.jpg的文件將被存儲在S3與該名稱的「平」的文件,但在GUI工具,它會出現,就像一個名爲myfile.jpg文件是folder1/folder2下降2子文件夾。

您可以使用prefixdelimiter參數來分析GET Bucket (List Objects)調用的結果。在任何SDK中也可以使用相同的選項。

UPDATE回答評論。

假設我們的S3存儲桶看起來是這樣的:

mybucket 
    folder1 
     file1.txt 
     file2.txt 
     folder2 
      file3.txt 
      file4.txt 
     folder3 
      file5.txt 
      file6.txt 

使用prefix = "folder1/"將返回所有6個文件:file1.txtfile6.txt

使用prefix = "folder1/"delimiter = "/"將返回2個文件:

file1.txt 
    file2.txt 

而且CommonPrefixes收集與含有

folder1/folder2/ 
    folder1/folder3/ 
+1

要改寫我的問題的話,什麼分隔符會響應我在你的例子中使用,以便我只能看到那些在folder2深處,但不是myfile.jpg? – 2011-04-01 04:08:15

+1

@格拉漢姆 - 我已經用更詳細的解釋更新了我的答案。 – 2011-04-01 08:27:35

+0

Geoff Appleford,你能回答我的問題嗎?請幫助謝謝。 http://stackoverflow.com/questions/30639195/how-can-i-get-objects-in-a-s3-bucket – Jasper 2015-06-04 11:58:48

相關問題