仅当文件不存在时才使用dbtuils复制Databricks文件

时间:2018-12-29 17:43:07

标签: databricks azure-databricks

我正在使用以下databricks utilites(dbutils)命令将文件从一个位置复制到另一位置,如下所示:

dbutils.fs.cp('adl://dblake.azuredatalakestore.net/jfolder2/thisfile.csv','adl://cadblake.azuredatalakestore.net/landing/')

但是,仅当不存在具有相同名称“ thisfile.csv”的文件时,我才希望复制文件。

有人能让我知道这是否可能吗?

如果没有,还有其他解决方法吗?

1 个答案:

答案 0 :(得分:1)

dbutils.fs.ls()列出给定路径中的文件。

ls

因此,您可以在复制文件之前检查thisfile.csv是否存在:

if "thisfile.csv" not in [file.name for file in dbutils.fs.ls("adl://cadblake.azuredatalakestore.net/landing/")]:
    dbutils.fs.cp("adl://dblake.azuredatalakestore.net/jfolder2/thisfile.csv", "adl://cadblake.azuredatalakestore.net/landing/")