【问题标题】:Databricks CLI - delete folder if existsDatabricks CLI - 如果存在则删除文件夹
【发布时间】:2021-10-12 18:00:14
【问题描述】:

当我尝试删除不存在的文件夹时,Databricks 引发错误:

databricks workspace delete -r /Shared/myfolder

错误信息:

Error: b'{"error_code":"RESOURCE_DOES_NOT_EXIST","message":"Path (/Shared/myfolder) doesn\'t exist."}'

所以我可能需要在删除之前检查文件夹是否存在?

伪代码示例:

if [ -d "/Shared/myfolder" ]; then databricks workspace delete -r /Shared/myfolder ; fi

如何使用 Databricks CLI 实现这一点?

【问题讨论】:

    标签: databricks databricks-cli


    【解决方案1】:

    CLI(和 REST API)中没有单独的函数来检查资源是否存在。你有两个选择:

    1. 忽略错误 - 如果您不想在脚本中看到它,只需在命令末尾添加 > /dev/null

    2. 使用ls 子命令检查目录是否存在,然后删除(但我个人认为这没有什么好处)。像这样的:

    FOLDER=/Shared/myfolder
    databricks workspace ls $FOLDER > /dev/null
    RES=$?
    if [ $RES -eq 0 ]; then
      databricks workspace delete -r $FOLDER
    fi
    

    我个人会采用第一种方法

    【讨论】:

    • 第二个选择成就了我的一天,我将其作为 azure 管道中的一个步骤,只有使用第二个解决方案,管道才不会失败,这正是我想要实现的。非常感谢您的帮助,谢谢!
    猜你喜欢
    • 2023-04-07
    • 1970-01-01
    • 2013-04-16
    • 1970-01-01
    • 1970-01-01
    • 2016-03-01
    • 1970-01-01
    • 2017-10-30
    • 1970-01-01
    相关资源
    最近更新 更多