All Products
Search
Document Center

Object Storage Service:rm

Last Updated:Mar 28, 2026

Topik ini menjelaskan cara menjalankan perintah rm untuk menghapus objek, bagian, atau bucket yang tidak lagi diperlukan guna menghindari biaya yang tidak perlu.

Catatan penggunaan

  • Untuk menghapus satu objek, Anda harus memiliki izin oss:DeleteObject. Untuk menghapus semua objek dalam direktori, Anda harus memiliki izin oss:DeleteObject dan oss:ListObjects. Untuk menghapus versi objek tertentu, Anda harus memiliki izin oss:DeleteObjectVersion. Untuk menghapus semua versi objek dalam bucket, Anda harus memiliki izin oss:ListObjectVersions dan oss:DeleteObjectVersion. Untuk menghapus semua versi objek dalam direktori, Anda harus memiliki izin oss:DeleteObjectVersion dan oss:ListObjects. Untuk menghapus bagian-bagian dari suatu objek, Anda harus memiliki izin oss:ListMultipartUploads dan oss:AbortMultipartUpload. Untuk menghapus semua objek dan bagian dalam bucket, Anda harus memiliki izin oss:ListMultipartUploads, oss:AbortMultipartUpload, oss:ListObjects, dan oss:DeleteObject. Untuk menghapus bucket, Anda harus memiliki izin oss:DeleteBucket.

  • Mulai versi ossutil 1.6.16 dan yang lebih baru, Anda dapat langsung menggunakan ossutil sebagai nama biner di command line tanpa perlu menyesuaikan nama biner berdasarkan sistem operasi. Untuk versi sebelum 1.6.16, Anda harus memperbarui nama biner sesuai sistem operasi. Untuk informasi selengkapnya, lihat Referensi perintah ossutil.

Sintaksis 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 sintaksis tersebut.

Parameter/Opsi

Deskripsi

bucketname

Nama bucket.

prefix

Awalan dalam nama sumber daya, seperti direktori dan objek.

-r, --recursive

Jika Anda menentukan opsi ini, ossutil akan menghapus semua objek yang namanya mengandung awalan yang ditentukan 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 multi-bagian yang belum lengkap di dalam bucket.

-a, --all-type

Menentukan bahwa operasi dilakukan pada objek yang namanya mengandung awalan yang ditentukan dan data yang dibuat oleh tugas unggah multi-bagian yang belum lengkap di dalam bucket.

-f, --force

Memaksa operasi tanpa meminta konfirmasi.

--include

Mencakup semua objek yang memenuhi kondisi yang ditentukan.

Untuk informasi selengkapnya, lihat Opsi --include dan --exclude.

--exclude

Mengecualikan semua objek yang memenuhi kondisi yang ditentukan.

Untuk informasi selengkapnya, lihat Opsi --include dan --exclude.

--version-id

ID versi objek. Parameter ini hanya berlaku untuk bucket yang telah diaktifkan atau ditangguhkan Pengendalian versi-nya.

--all-versions

Menentukan semua versi objek. Opsi ini hanya berlaku untuk objek dalam bucket yang telah diaktifkan atau ditangguhkan Pengendalian versi-nya. Anda hanya dapat menentukan salah satu dari opsi --version-id dan --all-versions dalam satu perintah rm.

--payer

Pihak yang membayar biaya yang dihasilkan oleh operasi. Jika Anda ingin pihak yang mengakses sumber daya di path tertentu membayar biaya yang dihasilkan oleh operasi—seperti biaya traffic dan permintaan—atur parameter ini ke requester.

--encoding-type

Encoding untuk awalan yang mengikuti oss://bucket_name. Nilai yang valid: url. Jika Anda tidak menentukan opsi ini, awalan tidak di-encode.

Hapus objek

Peringatan

Objek tidak dapat dipulihkan setelah dihapus. Lakukan operasi ini dengan hati-hati.

Jika Anda menggunakan perintah rm dengan atau tanpa opsi -r untuk menghapus satu atau beberapa objek, operasi ListObjects (GetBucket) dan DeleteObject akan dipanggil. Dalam kasus ini, Anda dikenai biaya untuk pengiriman permintaan PUT. Untuk informasi selengkapnya, lihat Biaya pemanggilan operasi API.

Peringatan
  • Jika Anda menyertakan opsi --include dan --exclude dalam perintah rm untuk menghapus objek, penghapusan tidak disengaja dapat terjadi akibat konfigurasi kondisi yang tidak tepat. Kami menyarankan agar 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 menyarankan agar 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 yang namanya mengandung awalan "test" dari bucket bernama examplebucket.

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

      ossutil rm oss://examplebucket  --include "*.png" -r
    • Hapus objek yang namanya mengandung string "abc" dan tidak mengandung 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 di bucket yang telah diaktifkan Pengendalian versi, yaitu examplebucket.

      ossutil rm oss://examplebucket/exampleobject.txt --version-id  CAEQARiBgID8rumR2hYiIGUyOTAyZGY2MzU5MjQ5ZjlhYzQzZjNlYTAyZDE3****

      Untuk informasi selengkapnya tentang cara mendapatkan semua versi objek, lihat ls.

    • Hapus semua versi objek bernama exampleobject.txt dari bucket examplebucket yang telah diaktifkan Pengendalian versi.

      ossutil rm oss://examplebucket/exampleobject.txt --all-versions
    • Hapus semua versi setiap objek dari bucket bernama examplebucket yang telah diaktifkan Pengendalian versi.

      ossutil rm oss://examplebucket --all-versions -r
  • Output contoh

    Tanggapan 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 kasus ini, Anda dikenai biaya untuk pengiriman permintaan GET saat operasi ListMultipartUploads dan ListParts dipanggil serta untuk pengiriman permintaan PUT saat operasi AbortMultipartUpload dipanggil. Untuk informasi selengkapnya, lihat Biaya pemanggilan operasi API.

  • Contoh

    • Tentukan opsi -m dalam perintah untuk menghapus bagian yang dihasilkan oleh tugas unggah multi-bagian yang belum lengkap dari objek bernama exampleobject.txt di bucket bernama examplebucket.

      ossutil rm -m oss://examplebucket/exampleobject.txt
    • Tentukan opsi -m dan -r dalam perintah untuk menghapus secara rekursif bagian yang dihasilkan oleh tugas unggah multi-bagian yang belum lengkap dari objek yang namanya mengandung awalan "test" di bucket bernama examplebucket.

      ossutil rm -m oss://examplebucket/test -r 
      Do you really mean to remove recursively multipart uploadIds of oss://examplebucket/test(y or N)? y 
    • Tentukan opsi -a dan -r dalam perintah untuk menghapus secara rekursif objek yang namanya mengandung awalan "src" serta bagian hasil dari tugas unggah multi-bagian yang belum lengkap dari objek tersebut di bucket bernama examplebucket.

      ossutil rm  oss://examplebucket/src -a -r
      Do you really mean to remove recursively objects and multipart uploadIds of oss://examplebucket/src(y or N)? y
  • Tanggapan contoh

    Tanggapan sukses mencakup jumlah objek yang dihapus, jumlah tugas unggah multi-bagian 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 apa pun.

    ossutil rm oss://examplebucket -b
    Do you really mean to remove the Bucket: examplebucket(y or N)? y

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

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

    Peringatan

    Jika Anda menjalankan perintah berikut, semua data dalam bucket akan dihapus dan data yang dihapus tidak dapat dipulihkan. Lakukan operasi ini dengan hati-hati.

    ossutil rm  oss://examplebucket -b -a -r
    Do you really mean to remove recursively objects and multipart uploadIds of oss://examplebucket(y or N)? y
    Do you really mean to remove the Bucket: examplebucket(y or N)? y

    Tanggapan sukses mencakup jumlah objek yang dihapus, jumlah tugas unggah multi-bagian 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 mengakses bucket di wilayah berbeda, tambahkan opsi -e untuk menentukan Titik akhir wilayah bucket tersebut. Jika Anda menggunakan ossutil untuk mengakses bucket yang dimiliki oleh Akun Alibaba Cloud lain, tambahkan opsi -i untuk menentukan ID AccessKey dan opsi -k untuk menentukan Rahasia AccessKey akun tersebut.

Sebagai contoh, Anda dapat menjalankan perintah berikut untuk menghapus objek bernama exampletest.png dari bucket bernama testbucket yang berada di wilayah Tiongkok (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 selengkapnya tentang opsi umum lainnya untuk perintah ini, lihat Opsi umum.

Kesalahan umum

Tabel berikut menjelaskan kesalahan umum yang mungkin Anda temui saat menggunakan perintah rm.

Kesalahan

Penyebab

Solusi

AccessDenied

Izin tidak mencukupi.

Verifikasi izin RAM.

InvalidEndpoint

Titik akhir untuk wilayah bucket salah.

Gunakan format titik akhir yang benar. Lihat Opsi umum.

InvalidArgument

Nilai opsi tidak valid.

Periksa format --version-id atau nilai --encoding-type.

Referensi: Kode kesalahan HTTP 403, Kode kesalahan HTTP 400