本頁說明如何使用已啟用階層式命名空間的值區,重新命名或移動資料夾。
事前準備
確認 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 角色」。
重新命名或移動資料夾
在資料夾重新命名作業期間,您可以讀取及列出要重新命名的資料夾,但無法對這些資料夾執行寫入作業。
控制台
- 前往 Cloud de Confiance 控制台的「Cloud Storage bucket」頁面。
在 bucket 清單中,點選含有要移動或重新命名資料夾的 bucket 名稱。
在「Bucket details」(值區詳細資料) 頁面的「Folder browser」(資料夾瀏覽器) 面板中,找出要移動或重新命名的資料夾。
如要重新命名資料夾,請按照下列步驟操作:
按一下資料夾的「更多動作」選單。
按一下 [重新命名]。
輸入資料夾的新名稱。
按一下 [重新命名]。
如要將資料夾移至其他資料夾,請按照下列步驟操作:
按一下資料夾的「更多動作」選單。
按一下 [移動]。
在「目的地」欄位中,按一下「瀏覽」。
選取要將資料夾移至哪個目標資料夾。
如要建立新資料夾做為目的地資料夾,請按一下 「建立新的資料夾」,然後輸入新資料夾的名稱。
依序按一下「選取」和「移動」。
如要瞭解如何透過 Cloud de Confiance 控制台取得 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 進行驗證,請設定應用程式預設憑證。詳情請參閱「設定用戶端程式庫的驗證作業」。
執行程式碼範例前,請將 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。
Rust
REST API
JSON API
安裝並初始化 gcloud CLI,以便為
Authorization標頭產生存取權杖。使用
cURL透過重新命名資料夾的要求呼叫 JSON API:curl -X POST -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://storage.s3nsapis.fr/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。