Tema ini menjelaskan cara menggunakan perintah rm untuk menghapus objek, bagian, atau bucket yang tidak diperlukan guna menghindari biaya tambahan.
Catatan penggunaan
Untuk menghapus satu objek, Anda memerlukan izin
oss:DeleteObject. Untuk menghapus semua objek dalam direktori, Anda memerlukan izinoss:DeleteObjectdanoss:ListObjects. Untuk menghapus versi tertentu dari sebuah objek, Anda memerlukan izinoss:DeleteObjectVersion. Untuk menghapus semua versi objek dalam bucket, Anda memerlukan izinoss:ListObjectVersionsdanoss:DeleteObjectVersion. Untuk menghapus semua versi objek dalam direktori, Anda memerlukan izinoss:DeleteObjectVersiondanoss:ListObjects. Untuk menghapus bagian dari objek, Anda memerlukan izinoss:ListMultipartUploadsdanoss:AbortMultipartUpload. Untuk menghapus semua objek dan bagian dalam bucket, Anda memerlukan izinoss:ListMultipartUploads,oss:AbortMultipartUpload,oss:ListObjects, danoss:DeleteObject. Untuk menghapus bucket, Anda memerlukan izinoss:DeleteBucket.Mulai ossutil versi 1.6.16, Anda dapat langsung menggunakan nama biner ossutil di baris perintah tanpa memperbarui berdasarkan sistem operasi. Untuk versi sebelum 1.6.16, Anda harus menyesuaikan nama biner sesuai dengan sistem operasi. Untuk informasi lebih lanjut, lihat Referensi Perintah ossutil.
Sintaks perintah
ossutil rm oss://bucketname[/prefix]
[-r, --recursive]
[-b, --bucket]
[-m, --multipart]
[-a, --all-type]
[-f, --force]
[--include <value>]
[--exclude <value>]
[--version-id <value>]
[--all-versions]
[--payer <value>]
[--encoding-type <value>]Tabel berikut menjelaskan parameter dan opsi dalam sintaks.
Parameter/Opsi | Deskripsi |
bucketname | Nama bucket. |
prefix | Awalan dalam nama sumber daya, seperti direktori dan objek. |
-r, --recursive | Jika Anda menentukan opsi ini, ossutil menghapus semua objek yang namanya mengandung awalan tertentu dari bucket. Jika Anda tidak menentukan opsi ini, ossutil hanya menghapus objek yang ditentukan. |
-b, --bucket | Menentukan bahwa perintah menghapus bucket. Opsi ini hanya diperlukan saat Anda menghapus bucket. |
-m, --multipart | Menentukan bahwa operasi dilakukan pada tugas unggah multipart yang belum selesai di bucket. |
-a, --all-type | Menentukan bahwa operasi dilakukan pada objek yang namanya mengandung awalan tertentu dan data yang dibuat oleh tugas unggah multipart yang belum selesai di bucket. |
-f, --force | Memaksa operasi tanpa memerlukan konfirmasi. |
--include | Mencakup semua objek yang memenuhi kondisi tertentu. Untuk informasi lebih lanjut, lihat Opsi --include dan --exclude. |
--exclude | Mengecualikan semua objek yang memenuhi kondisi tertentu. Untuk informasi lebih lanjut, lihat Opsi --include dan --exclude. |
--version-id | ID versi objek. Parameter ini hanya berlaku untuk bucket yang memiliki versioning aktif atau ditangguhkan. |
--all-versions | Menentukan semua versi objek. Opsi ini hanya berlaku untuk objek dalam bucket yang memiliki versioning aktif atau ditangguhkan. Anda hanya dapat menentukan salah satu dari opsi --version-id dan --all-versions dalam satu perintah rm. |
--payer | Pembayar biaya yang dihasilkan oleh operasi. Jika Anda ingin peminta yang mengakses sumber daya di jalur tertentu membayar biaya yang dihasilkan oleh operasi, seperti lalu lintas dan biaya permintaan, atur parameter ini ke requester. |
--encoding-type | Pengkodean awalan yang mengikuti |
Hapus objek
Objek yang telah dihapus tidak dapat dipulihkan. Harap berhati-hati saat melakukan operasi ini.
Jika Anda menggunakan perintah rm dengan atau tanpa opsi -r untuk menghapus satu atau beberapa objek, operasi ListObjects (GetBucket) dan DeleteObject akan dipanggil. Dalam hal ini, Anda akan dikenakan biaya untuk permintaan PUT. Untuk informasi lebih lanjut, lihat Biaya Pemanggilan Operasi API.
Jika Anda menyertakan opsi --include dan --exclude dalam perintah rm untuk menghapus objek, penghapusan tidak disengaja mungkin terjadi karena kondisi yang salah. Kami sarankan Anda berhati-hati saat menggunakan kedua opsi tersebut.
Anda dapat menentukan lebih dari satu kondisi dalam opsi --include dan --exclude. Semua kondisi diterapkan dari kiri ke kanan untuk mencocokkan objek. Jika Anda menentukan lebih dari satu kondisi, kami sarankan Anda menempatkan opsi --include sebelum opsi --exclude.
Contoh
Hapus satu objek
Hapus objek bernama exampleobject.txt dari bucket bernama examplebucket.
ossutil rm oss://examplebucket/exampleobject.txtHapus semua objek dengan awalan "test" dari bucket bernama examplebucket.
ossutil rm oss://examplebucket/test -rHapus semua objek dengan akhiran ".png" dari bucket bernama examplebucket.
ossutil rm oss://examplebucket --include "*.png" -rHapus objek yang mengandung string "abc" tetapi tidak memiliki akhiran ".jpg" atau ".txt" dari bucket bernama examplebucket.
ossutil rm oss://examplebucket --include "*abc*" --exclude "*.jpg" --exclude "*.txt" -rHapus versi tertentu dari objek bernama exampleobject.txt dari bucket bernama examplebucket yang memiliki versioning aktif.
ossutil rm oss://examplebucket/exampleobject.txt --version-id CAEQARiBgID8rumR2hYiIGUyOTAyZGY2MzU5MjQ5ZjlhYzQzZjNlYTAyZDE3****Untuk informasi lebih lanjut tentang cara mendapatkan semua versi objek, lihat ls.
Hapus semua versi objek bernama exampleobject.txt dari bucket bernama examplebucket yang memiliki versioning aktif.
ossutil rm oss://examplebucket/exampleobject.txt --all-versionsHapus semua versi dari semua objek dari bucket bernama examplebucket yang memiliki versioning aktif.
ossutil rm oss://examplebucket --all-versions -r
Contoh Keluaran
Respon sukses mencakup jumlah objek yang dihapus dan waktu yang digunakan untuk menyelesaikan operasi penghapusan:
Succeed: Total 8 objects. Removed 8 objects. 0.106852(s) elapsed
Hapus bagian
Jika Anda menggunakan perintah rm dengan beberapa opsi untuk menghapus bagian, operasi ListMultipartUploads, ListParts, dan AbortMultipartUpload akan dipanggil. Dalam hal ini, Anda akan dikenakan biaya untuk permintaan GET saat operasi ListMultipartUploads dan ListParts dipanggil, serta untuk permintaan PUT saat operasi AbortMultipartUpload dipanggil. Untuk informasi lebih lanjut, lihat Biaya Pemanggilan Operasi API.
Contoh
Gunakan opsi -m dalam perintah untuk menghapus bagian yang dihasilkan oleh tugas unggah multipart yang belum selesai dari objek bernama exampleobject.txt di bucket bernama examplebucket.
ossutil rm -m oss://examplebucket/exampleobject.txtGunakan opsi -m dan -r dalam perintah untuk secara rekursif menghapus bagian yang dihasilkan oleh tugas unggah multipart yang belum selesai dari objek dengan awalan "test" di bucket bernama examplebucket.
ossutil rm -m oss://examplebucket/test -r Apakah Anda benar-benar ingin menghapus rekursif ID unggah multipart dari oss://examplebucket/test(y atau N)? yGunakan opsi -a dan -r dalam perintah untuk secara rekursif menghapus objek dengan awalan "src" dan bagian yang dihasilkan oleh tugas unggah multipart yang belum selesai dari objek tersebut di bucket bernama examplebucket.
ossutil rm oss://examplebucket/src -a -r Apakah Anda benar-benar ingin menghapus rekursif objek dan ID unggah multipart dari oss://examplebucket/src(y atau N)? y
Contoh Respon
Respon sukses mencakup jumlah objek yang dihapus, jumlah tugas unggah multipart yang menghasilkan bagian yang dihapus, dan waktu yang digunakan untuk menyelesaikan operasi penghapusan:
Succeed: Total 1 objects, 3 uploadIds. Removed 1 objects, 3 uploadIds. 1.922915(s) elapsed
Hapus bucket
Hapus bucket examplebucket yang tidak berisi objek atau bagian.
ossutil rm oss://examplebucket -b Apakah Anda benar-benar ingin menghapus Bucket: examplebucket(y atau N)? yRespon sukses mencakup nama bucket yang dihapus dan waktu yang digunakan untuk menghapus bucket:
Removed Bucket: examplebucket 2.230745(s) elapsedHapus bucket bernama examplebucket beserta semua objek dan bagiannya.
PeringatanJika Anda menjalankan perintah berikut, semua data dalam bucket akan dihapus dan tidak dapat dipulihkan. Harap berhati-hati saat melakukan operasi ini.
ossutil rm oss://examplebucket -b -a -r Apakah Anda benar-benar ingin menghapus rekursif objek dan ID unggah multipart dari oss://examplebucket(y atau N)? y Apakah Anda benar-benar ingin menghapus Bucket: examplebucket(y atau N)? yRespon sukses mencakup jumlah objek yang dihapus, jumlah tugas unggah multipart yang menghasilkan bagian yang dihapus, nama bucket yang dihapus, dan waktu yang digunakan untuk menyelesaikan operasi penghapusan:
Succeed: Total 189 objects, 37 uploadIds. Removed 189 objects, 37 uploadIds. Removed Bucket: examplebucket 9.184193(s) elapsed
Opsi umum
Jika Anda menggunakan ossutil untuk beralih ke bucket yang berada di wilayah lain, tambahkan opsi -e untuk menentukan titik akhir wilayah tempat bucket berada. Jika Anda menggunakan ossutil untuk beralih ke bucket yang dimiliki oleh akun Alibaba Cloud lain, tambahkan opsi -i untuk menentukan ID AccessKey dari akun tersebut, dan tambahkan opsi -k untuk menentukan Rahasia AccessKey dari akun tersebut.
Sebagai contoh, Anda dapat menjalankan perintah berikut untuk menghapus objek bernama exampletest.png dari bucket bernama testbucket, yang berada di wilayah China (Shanghai) dan dimiliki oleh akun Alibaba Cloud lain:
ossutil rm oss://testbucket/exampletest.png -e oss-cn-shanghai.aliyuncs.com -i yourAccessKeyID -k yourAccessKeySecretUntuk informasi lebih lanjut tentang opsi umum, lihat Opsi Umum.