【问题标题】:How to rename a Data Lake Gen2 folder using the Azure CLI?如何使用 Azure CLI 重命名 Data Lake Gen2 文件夹?
【发布时间】:2019-11-05 15:12:20
【问题描述】:

我正在使用 Azure Data Lake Gen2,我有一个名为 myfolder 的文件夹,其中包含 1000s 个文件。 Azure 存储 CLI 上是否有用于重命名文件夹和/或将整个文件夹移动到 ADLS Gen2 的另一个位置的命令?

在 Azure Databricks 中,我可以轻松利用 linux mv bash 命令:

  • mv myfolder newname 用于重命名 myfolder
  • mv myfolder /dbfs/mount/myadls/target/ 用于将 myfolder 移动到 target 文件夹。

是否有一种简单的方法可以使用 Azure CLI 执行相同的操作?

【问题讨论】:

    标签: azure-data-lake azure-cli azure-data-lake-gen2


    【解决方案1】:

    根据我的研究,如果你想管理 Data Lake Gen2 目录,现在我们可以使用Azure data lake gen2 rest api。更多详情请参考document

    例如,如果要重命名文件夹,可以使用the rest api

    PuT https://<your account name>.dfs.core.windows.net/<file system name>/<new folder name>
    Header:
    x-ms-rename-source : /<file system name>/<orginal folder name>
    Authorization : Bearer access token.
    

    关于如何调用rest api,请参考以下步骤 1. 创建服务主体

    az login
    az ad sp create-for-rbac --name ServicePrincipalName
    
    1. 为服务主体分配角色
    az role assignment create \
        --role "Storage Blob Data Contributor" \
        --assignee < your service principal name> \
        --scope "/subscriptions/<subscription>/resourceGroups/<resource-group>/providers/Microsoft.Storage/storageAccounts/<storage-account>"
    
    1. 调用其余的api
    az login --service-principal  --username <your service principal app id> --password <your service principal password>--tenant <your tenant id>
    
    az rest --method put --uri https://testadls05.dfs.core.windows.net/test/testFolder --resource https://storage.azure.com --headers x-ms-rename-source=/test/testFolder1
    

    【讨论】:

      【解决方案2】:

      更新:ADLS Gen2 CLI 现已推出

      我们可以使用az storage fs directory move 命令重命名或移动目录。

      示例1:在同一文件系统中将目录从名称my-directory重命名为名称my-new-directory

      az storage fs directory move -n my-directory -f my-file-system --new-directory "my-file-system/my-new-directory" --account-name mystorageaccount --auth-mode login
      

      示例 2:此示例将目录移动到名为 my-second-file-system 的文件系统中。

      az storage fs directory move -n my-directory -f my-file-system --new-directory "my-second-file-system/my
      

      如需了解更多信息,请联系official documentation

      【讨论】:

        猜你喜欢
        • 2019-11-26
        • 1970-01-01
        • 2019-07-10
        • 2020-02-22
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-02-12
        • 2021-03-06
        相关资源
        最近更新 更多