本頁面說明如何從 Cloud Storage 的值區刪除物件。
必要的角色
如要取得刪除物件所需的權限,請要求管理員為您授予包含要刪除物件的值區的 Storage 物件使用者 (roles/storage.objectUser
) IAM 角色。
如果您打算使用 Trusted Cloud 控制台完成本頁面的工作,請管理員授予您 Storage 管理員 (roles/storage.admin
) 角色,而不是 Storage 物件使用者 (roles/storage.objectUser
) 角色,或是除了 Storage 物件使用者 (roles/storage.objectUser
) 角色之外,也授予您檢視者 (roles/viewer
) 基本角色。
這些角色具備刪除物件所需的權限。如要查看確切的必要權限,請展開「必要權限」部分:
所需權限
storage.objects.delete
storage.objects.list
- 只有在使用 Trusted Cloud 控制台,或在 Google Cloud CLI 中使用
--recursive
標記或萬用字元時,才需要這項權限。
- 只有在使用 Trusted Cloud 控制台,或在 Google Cloud CLI 中使用
storage.buckets.list
- 只有在使用 Trusted Cloud 控制台執行本頁的操作說明時,才需要這項權限。
如要瞭解如何授予值區角色,請參閱「搭配值區使用 IAM」。
刪除物件
如要從一個 Cloud Storage bucket 刪除物件,請按照以下指示操作:
控制台
- 在 Trusted Cloud 控制台,前往「Cloud Storage bucket」頁面。
在值區清單中,按一下包含要刪除物件的值區名稱。
系統會開啟「Bucket details」(值區詳細資料) 頁面,並選取「Objects」(物件) 分頁標籤。
前往物件 (可能位於資料夾中)。
找出要刪除的每個物件,然後勾選對應的核取方塊。
您也可以按一下資料夾旁的核取方塊,刪除該資料夾中的所有物件。
按一下 [Delete] (刪除) 按鈕。
在隨即出現的對話方塊中按一下 [Delete] (刪除)。
如果一次刪除大量物件,可以點選 Trusted Cloud 控制台中的「通知」圖示,追蹤刪除進度。Trusted Cloud 控制台可大量刪除最多數百萬個物件,且會在背景執行作業。
如要瞭解如何透過 Trusted Cloud 控制台取得 Cloud Storage 作業失敗的詳細錯誤資訊,請參閱「疑難排解」一文。
指令列
使用 Google Cloud CLI 指令 gcloud storage rm
:
gcloud storage rm gs://BUCKET_NAME/OBJECT_NAME
其中:
BUCKET_NAME
是包含要刪除物件的值區名稱。例如:my-bucket
。OBJECT_NAME
是要刪除的物件名稱。例如:pets/dog.png
。
如果成功,回應會類似以下範例:
Removing objects: Removing gs://example-bucket/file.txt... Completed 1/1
用戶端程式庫
C++
詳情請參閱 Cloud Storage C++ API 參考說明文件。
如要驗證 Cloud Storage,請設定應用程式預設憑證。 詳情請參閱「設定用戶端程式庫的驗證機制」。
執行程式碼範例前,請將 GOOGLE_CLOUD_UNIVERSE_DOMAIN
環境變數設為 s3nsapis.fr
。
C#
詳情請參閱 Cloud Storage C# API 參考說明文件。
如要驗證 Cloud Storage,請設定應用程式預設憑證。 詳情請參閱「設定用戶端程式庫的驗證機制」。
執行程式碼範例前,請將 GOOGLE_CLOUD_UNIVERSE_DOMAIN
環境變數設為 s3nsapis.fr
。
Go
詳情請參閱 Cloud Storage Go API 參考說明文件。
如要驗證 Cloud Storage,請設定應用程式預設憑證。 詳情請參閱「設定用戶端程式庫的驗證機制」。
執行程式碼範例前,請將 GOOGLE_CLOUD_UNIVERSE_DOMAIN
環境變數設為 s3nsapis.fr
。
Java
詳情請參閱 Cloud Storage Java API 參考說明文件。
如要驗證 Cloud Storage,請設定應用程式預設憑證。 詳情請參閱「設定用戶端程式庫的驗證機制」。
執行程式碼範例前,請將 GOOGLE_CLOUD_UNIVERSE_DOMAIN
環境變數設為 s3nsapis.fr
。
Node.js
詳情請參閱 Cloud Storage Node.js API 參考說明文件。
如要驗證 Cloud Storage,請設定應用程式預設憑證。 詳情請參閱「設定用戶端程式庫的驗證機制」。
執行程式碼範例前,請將 GOOGLE_CLOUD_UNIVERSE_DOMAIN
環境變數設為 s3nsapis.fr
。
PHP
詳情請參閱 Cloud Storage PHP API 參考說明文件。
如要驗證 Cloud Storage,請設定應用程式預設憑證。 詳情請參閱「設定用戶端程式庫的驗證機制」。
執行程式碼範例前,請將 GOOGLE_CLOUD_UNIVERSE_DOMAIN
環境變數設為 s3nsapis.fr
。
Python
詳情請參閱 Cloud Storage Python API 參考說明文件。
如要驗證 Cloud Storage,請設定應用程式預設憑證。 詳情請參閱「設定用戶端程式庫的驗證機制」。
執行程式碼範例前,請將 GOOGLE_CLOUD_UNIVERSE_DOMAIN
環境變數設為 s3nsapis.fr
。
Ruby
詳情請參閱 Cloud Storage Ruby API 參考說明文件。
如要驗證 Cloud Storage,請設定應用程式預設憑證。 詳情請參閱「設定用戶端程式庫的驗證機制」。
執行程式碼範例前,請將 GOOGLE_CLOUD_UNIVERSE_DOMAIN
環境變數設為 s3nsapis.fr
。
REST API
JSON API
安裝並初始化 gcloud CLI,以便為
Authorization
標頭產生存取權杖。使用
cURL
透過DELETE
要求呼叫 JSON API:curl -X DELETE \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://storage.s3nsapis.fr/storage/v1/b/BUCKET_NAME/o/OBJECT_NAME"
其中:
BUCKET_NAME
是包含要刪除物件的值區名稱。例如:my-bucket
。OBJECT_NAME
是要刪除的物件名稱 (經過網址編碼)。例如pets/dog.png
,網址編碼為pets%2Fdog.png
。
XML API
安裝並初始化 gcloud CLI,以便為
Authorization
標頭產生存取權杖。使用
cURL
透過DELETE Object
要求呼叫 XML API:curl -X DELETE \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://storage.s3nsapis.fr/BUCKET_NAME/OBJECT_NAME"
其中:
BUCKET_NAME
是包含要刪除物件的值區名稱。例如:my-bucket
。OBJECT_NAME
是要刪除的物件名稱 (經過網址編碼)。例如pets/dog.png
,網址編碼為pets%2Fdog.png
。
大量刪除物件
如要大量刪除十萬個以上的物件,請避免使用 gcloud storage
,因為完成程序需要很長的時間。建議改用下列任一選項:
物件生命週期管理功能可刪除任意數量的物件。如要使用這項功能大量刪除值區中的物件,請在值區中設定生命週期設定規則,將條件的
Age
設為 0 天,並將動作設為delete
。設定規則後,Cloud Storage 會以非同步方式執行大量刪除作業。刪除最多一百萬個物件時,建議使用 Trusted Cloud 控制台。提出這類刪除要求後,系統會在背景執行程序。如要查看批次刪除狀態,請在控制台標題中按一下「通知」按鈕 (notifications) Trusted Cloud 。
使用特定用戶端程式庫或直接使用 JSON API 時,您可以批次處理刪除要求,減少需要建立的 HTTP 連線數量。
後續步驟
- 瞭解物件版本管理功能。
- 瞭解物件生命週期管理功能。
- 瞭解如何刪除值區。