Bagaimana cara membuat folder di bawah ember menggunakan boto
perpustakaan untuk Amazon s3?
Saya mengikuti manual, dan membuat kunci dengan izin, metadata dll, tetapi tidak ada di mana dalam dokumentasi boto itu menjelaskan cara membuat folder di bawah ember, atau membuat folder di bawah folder di ember.
Jawaban:
Tidak ada konsep folder atau direktori di S3. Anda dapat membuat nama file seperti
"abc/xys/uvw/123.jpg"
, yang ditampilkan oleh banyak alat akses S3S3Fox
seperti struktur direktori, tetapi sebenarnya ini hanya satu file dalam satu keranjang.sumber
Asumsikan Anda ingin membuat folder abc / 123 / di ember Anda, itu sangat mudah dengan Boto
Atau gunakan konsol
sumber
new_key()
itu yang Anda butuhkan. String yang dikirim ke fungsi dapat berupaabc/123/
atauabc/123/newfile.txt
. Apapun yang kamu suka. Saya suka membungkus ini dalam pernyataan if setelah saya mencoba mendapatkan apa yang saya harap ada di sana seperti ini:key = bucket.get_key(upgrade_path) if key is None: key = bucket.new_key(upgrade_path)
Intinya, jika tidak ada, buatlah!mp = self._bucket.initiate_multipart_upload(bucket_key)
Dengan AWS SDK .Net berfungsi dengan sempurna, cukup tambahkan "/" di akhir string nama folder:
Kemudian segarkan konsol AWS Anda, dan Anda akan melihat foldernya
sumber
Gunakan ini:
sumber
Tambahkan "_ $ folder $" ke nama folder Anda dan panggil put.
lihat: http://www.snowgiraffe.com/tech/147/creating-folders-programmatically-with-amazon-s3s-api-putting-babies-in-buckets/
sumber
Sangat mudah untuk membuat folder. Sebenarnya ini hanya membuat kunci.
Anda dapat melihat kode saya di bawah ini, saya sedang membuat folder dengan utc_time sebagai nama.
Ingatlah mengakhiri kunci dengan '/' seperti di bawah ini, ini menunjukkan itu adalah kunci:
Kunci = 'folder1 /' + utc_time + '/'
sumber
Update untuk 2019, jika ingin membuat folder dengan path bucket_name / folder1 / folder2 kamu bisa menggunakan kode ini:
sumber
Meskipun Anda dapat membuat folder dengan menambahkan "/" ke nama_folder Anda. Di bawah kap, S3 mempertahankan struktur datar tidak seperti NFS biasa Anda.
sumber
Mencoba banyak metode di atas dan menambahkan garis miring
/
ke akhir nama kunci, untuk membuat direktori tidak berfungsi untuk saya:Anda harus menyediakan
Body
parameter untuk membuat direktori:Sumber: ryantuck dalam edisi boto3
sumber
S3 tidak memiliki struktur folder, Tetapi ada sesuatu yang disebut sebagai kunci.
Kita dapat membuat
/2013/11/xyz.xls
dan akan ditampilkan sebagai folder di konsol. Tetapi bagian penyimpanan S3 akan menggunakan itu sebagai nama file.Bahkan saat mengambil kami mengamati bahwa kami dapat melihat file di folder (atau kunci) tertentu dengan menggunakan
ListObjects
metode dan menggunakanPrefix
parameter.sumber
Rupanya Anda sekarang dapat membuat folder di S3. Saya tidak yakin sejak kapan, tetapi saya memiliki keranjang di zona "Standar" dan dapat memilih Buat Folder dari tarik-turun Tindakan.
sumber