本頁說明如何使用已啟用階層式命名空間的值區,重新命名或移動資料夾。
事前準備
確認 bucket 已啟用階層命名空間。如需在 bucket 上啟用階層式命名空間的詳細操作說明,請參閱「建立已啟用階層式命名空間的 bucket」。
必要的角色
如要取得在 bucket 中重新命名或移動資料夾所需的權限,請要求管理員授予 bucket 的「Storage 物件使用者」(roles/storage.objectUser) IAM 角色。
如要進一步瞭解如何授予專案角色,請參閱「管理專案存取權」。
如要查看確切的必要權限,請展開「Required permissions」(必要權限) 部分:
所需權限
storage.folders.rename- 來源資料夾必須具備這項權限。
storage.folders.create- 目的地資料夾必須具備這項權限。
您也可以透過其他自訂角色或預先定義的角色取得上述權限。如要取得更寬鬆的權限,除了重新命名資料夾,還能管理資料夾,請要求管理員授予您下列任一角色:
- Storage 資料夾管理員 (
roles/storage.folderAdmin) - Storage 物件管理員 (
roles/storage.objectAdmin) - 儲存空間管理員 (
roles/storage.admin)
如要查看哪些角色與哪些權限相關聯,請參閱「Cloud Storage 的 IAM 角色」。
重新命名或移動資料夾
在資料夾重新命名作業期間,您可以讀取及列出要重新命名的資料夾,但無法對這些資料夾執行寫入作業。
控制台
- 前往 Google Cloud 控制台的「Cloud Storage bucket」頁面。
在 bucket 清單中,點選含有要移動或重新命名資料夾的 bucket 名稱。
在「Bucket details」(值區詳細資料) 頁面中,找出要移動或重新命名的資料夾。
如要重新命名資料夾,請按照下列步驟操作:
按一下資料夾的 「更多動作」選單。
按一下「重新命名資料夾」。
在出現的重疊視窗中,為資料夾輸入新名稱。
按一下 [重新命名]。
如要將資料夾移到其他資料夾,請按照下列步驟操作:
按一下資料夾的 「更多動作」選單。
按一下「移動資料夾」。
在出現的重疊視窗中,按一下 [Browse] (瀏覽)。
選取要移動資料夾的目標資料夾。您也可以按一下 建立新資料夾,再選取做為目的地資料夾。
按一下「選取」。
按一下 [移動]。
如要瞭解如何透過 Google Cloud 控制台取得 Cloud Storage 作業失敗的詳細錯誤資訊,請參閱「疑難排解」一文。
指令列
如要重新命名或移動 bucket 中階層式命名空間內的資料夾,請執行 gcloud storage mv 指令:
gcloud storage mv gs://BUCKET_NAME/FOLDER1 gs://BUCKET_NAME/FOLDER2
其中:
BUCKET_NAME是包含要重新命名或移動資料夾的值區名稱。例如:my-bucket。FOLDER1是要重新命名或移動的原始資料夾名稱。例如:my-src-folder。FOLDER2是目標資料夾的新名稱。例如,my-dest-folder。如果新名稱與現有資料夾相同,系統會將原始資料夾移至現有資料夾中,成為子資料夾。舉例來說,如果將my-dest-folder重新命名為my-dest-folder1(且my-dest-folder1已存在),結果會是my-dest-folder1/my-dest-folder/。如果選擇的新名稱不存在,系統會將原始資料夾重新命名為新名稱。
回應類似下列範例:
Copying gs://my-bucket/my-src-folder to gs://my-bucket/my-dest-folder...
用戶端程式庫
C++
詳情請參閱「Cloud Storage C++ API 參考文件」。
如要向 Cloud Storage 進行驗證,請設定應用程式預設憑證。詳情請參閱「設定用戶端程式庫的驗證作業」。
C#
詳情請參閱「Cloud Storage C# API 參考文件」。
如要向 Cloud Storage 進行驗證,請設定應用程式預設憑證。詳情請參閱「設定用戶端程式庫的驗證作業」。
Go
詳情請參閱「Cloud Storage Go API 參考文件」。
如要向 Cloud Storage 進行驗證,請設定應用程式預設憑證。詳情請參閱「設定用戶端程式庫的驗證作業」。
Java
詳情請參閱「Cloud Storage Java API 參考文件」。
如要向 Cloud Storage 進行驗證,請設定應用程式預設憑證。詳情請參閱「設定用戶端程式庫的驗證作業」。
Node.js
詳情請參閱「Cloud Storage Node.js API 參考文件」。
如要向 Cloud Storage 進行驗證,請設定應用程式預設憑證。詳情請參閱「設定用戶端程式庫的驗證作業」。
PHP
詳情請參閱「Cloud Storage PHP API 參考文件」。
如要向 Cloud Storage 進行驗證,請設定應用程式預設憑證。詳情請參閱「設定用戶端程式庫的驗證作業」。
Python
詳情請參閱「Cloud Storage Python API 參考文件」。
如要向 Cloud Storage 進行驗證,請設定應用程式預設憑證。詳情請參閱「設定用戶端程式庫的驗證作業」。
Ruby
詳情請參閱「Cloud Storage Ruby API 參考文件」。
如要向 Cloud Storage 進行驗證,請設定應用程式預設憑證。詳情請參閱「設定用戶端程式庫的驗證作業」。
Rust
REST API
JSON API
使用
cURL透過重新命名資料夾要求呼叫 JSON API:curl -X POST -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://storage.googleapis.com/storage/v1/b/BUCKET_NAME/folders/SOURCE_PATH/renameTo/folders/DESTINATION_PATH"
其中:
BUCKET_NAME是包含要重新命名或移動資料夾的值區名稱。例如:my-bucket。SOURCE_PATH是來源資料夾的 URL 編碼路徑。舉例來說,my-src-folder/經過網址編碼後會變成my-src-folder%2F。DESTINATION_PATH是經過網址編碼的目標資料夾路徑。舉例來說,my-dest-folder/經過網址編碼後會變成my-dest-folder%2F。
後續步驟
歡迎試用
如果您未曾使用過 Google Cloud,歡迎建立帳戶,親自體驗實際使用 Cloud Storage 平台的成效。新客戶還能獲得價值 $300 美元的免費抵免額,用於執行、測試及部署工作負載。
免費試用 Cloud Storage