fs
命令组
注意
此信息适用于 Databricks CLI 0.205 及更高版本,这些版本为公共预览版。 若要查找你的 Databricks CLI 的版本,请运行 databricks -v
。
Databricks CLI 中的fs
命令组允许在 Unity 目录中自动执行卷,并自动执行Databricks 文件系统 (DBFS)对象。
可以通过将 fs
命令追加到 databricks fs
中来运行这些命令。 若要显示 fs
命令的帮助,请运行 databricks fs -h
。
fs
命令需要卷路径以dbfs:/Volumes
开头,并且需要 DBFS 中的目录和文件路径以dbfs:/
开头。
重要
要安装 Databricks CLI,请参阅《安装或更新 Databricks CLI》。 若要配置 Databricks CLI 的身份验证,请参阅 Databricks CLI 的身份验证。
列出目录的内容
要列出卷或 DBFS 中目录的内容,请使用ls
命令。 指定目录的路径。 以下示例列出了在指定卷的根中或 DBFS 根中找到的对象的名称:
databricks fs ls dbfs:/Volumes/main/default/my-volume
databricks fs ls dbfs:/
若要显示完整信息,包括对象类型、大小、修改时间(相对于纪元时间,以毫秒为单位)以及对象名称,请使用 --long
或 -l
选项。 以下示例列出了在指定卷的根中或 DBFS 根的 tmp
目录中找到的对象的完整信息:
databricks fs ls dbfs:/Volumes/main/default/my-volume -l
databricks fs ls dbfs:/tmp -l
若要显示完整对象路径,请使用 --absolute
选项。 以下示例列出了在指定卷的根中或 DBFS 根的 tmp
目录中找到的对象的完整信息以及对象的完整路径:
databricks fs ls dbfs:/Volumes/main/default/my-volume -l --absolute
databricks fs ls dbfs:/tmp -l --absolute
输出文件的内容
要输出文件的内容,请使用cat
命令。 指定 DBFS 中文件的路径。 以下示例输出了在指定卷的根中或 DBFS 根的 tmp
目录中找到的名为 babynames.csv
的文件的内容:
databricks fs cat dbfs:/Volumes/main/default/my-volume/babynames.csv
databricks fs cat dbfs:/tmp/babynames.csv
以下示例返回错误,因为它们尝试输出目录的内容而不是文件:
databricks fs cat dbfs:/Volumes/main/default/my-volume
databricks fs cat dbfs:/tmp
创建目录
若要创建目录,请使用 mkdir
命令。 指定要在卷或 DBFS 中创建的目录的路径。 如果该目录已存在,则不会执行任何操作。 以下示例在指定卷的根中或 DBFS 根的名为 tmp
的目录中创建名为 squirrel-data
的目录:
databricks fs mkdir dbfs:/Volumes/main/default/my-volume/squirrel-data
databricks fs mkdir dbfs:/tmp/squirrel-data
复制目录或文件
请使用“cp
”命令复制目录或文件。 指定指向要复制的源目录或文件的路径及其目标。 可以在本地系统文件和 DBFS 之间复制目录和文件,还可以在 DBFS 路径之间复制目录和文件。 若要覆盖现有文件,请使用“--overwrite
”选项。 若要以递归方式复制目录中的文件,请使用“--recursive
”或“-r
”选项。
如果省略 file:/
,则 cp
命令将采用 file:/
。
以下示例将名为 squirrel-data
的目录及其内容从本地文件系统路径复制到指定卷的根中或 DBFS 根中的 squirrels
目录。
databricks fs cp /Users/<username>/squirrel-data dbfs:/Volumes/main/default/my-volume/squirrels -r
databricks fs cp /Users/<username>/squirrel-data dbfs:/squirrels -r
以下示例将名为 squirrels.csv
的文件从本地文件系统路径复制到指定卷的根中或 DBFS 根中名为 squirrel-data
的目录。 如果目标中已存在该文件,则会覆盖该文件。
databricks fs cp /Users/<username>/squirrels.csv dbfs:/Volumes/main/default/my-volume/squirrel-data --overwrite
databricks fs cp /Users/<username>/squirrels.csv dbfs:/squirrel-data --overwrite
删除目录
若要删除目录,请使用 rm
命令。 指定 DBFS 中现有目录的路径。 以下示例从指定卷的根中或 DBFS 根的 tmp
目录中删除名为 squirrel-data
的目录:
databricks fs rm dbfs:/Volumes/main/default/my-volume/squirrel-data
databricks fs rm dbfs:/tmp/squirrel-data
如果该目录不存在,则不会执行任何操作,且不会返回错误。
如果目录存在但不是空的,则返回错误。 要删除非空目录及其所有内容,请使用 --recursive
或 -r
选项。 以下示例从指定卷的根中或 DBFS 根的 tmp
目录中删除名为 squirrel-data
的非空目录:
databricks fs rm dbfs:/Volumes/main/default/my-volume/squirrel-data -r
databricks fs rm dbfs:/tmp/squirrel-data -r