全部产品
Search
文档中心

Object Storage Service:rm, rm

更新时间:Jul 02, 2025

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 izin oss:DeleteObject dan oss:ListObjects. Untuk menghapus versi tertentu dari sebuah objek, Anda memerlukan izin oss:DeleteObjectVersion. Untuk menghapus semua versi objek dalam bucket, Anda memerlukan izin oss:ListObjectVersions dan oss:DeleteObjectVersion. Untuk menghapus semua versi objek dalam direktori, Anda memerlukan izin oss:DeleteObjectVersion dan oss:ListObjects. Untuk menghapus bagian dari objek, Anda memerlukan izin oss:ListMultipartUploads dan oss:AbortMultipartUpload. Untuk menghapus semua objek dan bagian dalam bucket, Anda memerlukan izin oss:ListMultipartUploads, oss:AbortMultipartUpload, oss:ListObjects, dan oss:DeleteObject. Untuk menghapus bucket, Anda memerlukan izin oss: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 oss://bucket_name. Nilai valid: url. Jika Anda tidak menentukan opsi ini, awalan tidak dikodekan.

Hapus objek

Peringatan

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.

Peringatan
  • 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.txt
    • Hapus semua objek dengan awalan "test" dari bucket bernama examplebucket.

      ossutil rm oss://examplebucket/test -r
    • Hapus semua objek dengan akhiran ".png" dari bucket bernama examplebucket.

      ossutil rm oss://examplebucket  --include "*.png" -r
    • Hapus 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" -r
    • Hapus 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-versions
    • Hapus 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.txt
    • Gunakan 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)? y 
    • Gunakan 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)? y

    Respon sukses mencakup nama bucket yang dihapus dan waktu yang digunakan untuk menghapus bucket:

    Removed Bucket: examplebucket
    2.230745(s) elapsed
  • Hapus bucket bernama examplebucket beserta semua objek dan bagiannya.

    Peringatan

    Jika 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)? y

    Respon 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 yourAccessKeySecret

Untuk informasi lebih lanjut tentang opsi umum, lihat Opsi Umum.