Freigeben über


fs-Befehlsgruppe

Hinweis

Diese Informationen gelten für Databricks CLI-Versionen 0.205 und höher. Die Databricks CLI befindet sich in der öffentlichen Vorschau.

Die Verwendung von Databricks CLI unterliegt der Datenbricks-Lizenz - und Databricks-Datenschutzerklärung, einschließlich der Bestimmungen zu Nutzungsdaten.

Mit der Befehlsgruppe fs innerhalb der Databricks-CLI können Sie Volumes im Unity-Katalog sowie Databricks File System (DBFS)-Objekte automatisieren.

Sie führen fs-Befehle aus, indem Sie sie an databricks fs anfügen. Führen Sie databricks fs -h aus, um Hilfe zum fs-Befehl anzuzeigen.

fs-Befehle erfordern, dass Volumepfade mit dbfs:/Volumes und Verzeichnis- und Dateipfade in DBFS mit dbfs:/ beginnen müssen.

Auflisten des Inhalts eines Verzeichnisses

Verwenden Sie den ls-Befehl, um den Inhalt eines Verzeichnisses in einem Volume oder im DBFS aufzulisten. Geben Sie den Pfad zum Verzeichnis an. In den folgenden Beispielen werden die Namen der Objekte aufgelistet, die sich im Stammverzeichnis des angegebenen Volumes oder im DBFS-Stamm befinden:

databricks fs ls dbfs:/Volumes/main/default/my-volume
databricks fs ls dbfs:/

Verwenden Sie eine der Optionen --long oder -l, um vollständige Informationen anzuzeigen, z. B. Objekttypen, Größen, Änderungszeiten in Millisekunden seit der Epoche sowie die Namen der Objekte. In den folgenden Beispielen werden die vollständigen Informationen der Objekte im Stammverzeichnis des angegebenen Volumes oder in einem tmp-Verzeichnis im DBFS-Stamm aufgeführt:

databricks fs ls dbfs:/Volumes/main/default/my-volume -l
databricks fs ls dbfs:/tmp -l

Verwenden Sie die Option --absolute, um vollständige Objektpfade anzuzeigen. In den folgenden Beispielen werden die vollständigen Informationen der Objekte im Stammverzeichnis des angegebenen Volumes oder in einem tmp-Verzeichnis im DBFS-Stamm sowie die vollständigen Pfade der Objekte aufgelistet:

databricks fs ls dbfs:/Volumes/main/default/my-volume -l --absolute
databricks fs ls dbfs:/tmp -l --absolute

Ausgeben des Inhalts einer Datei

Verwenden Sie den Befehl cat, um den Inhalt einer Datei auszugeben. Geben Sie den Pfad zu der Datei im DBFS an. In den folgenden Beispielen wird der Inhalt der Datei babynames.csv ausgegeben, die sich im Stammverzeichnis des angegebenen Volumes oder in einem tmp-Verzeichnis im DBFS-Stammverzeichnis befindet:

databricks fs cat dbfs:/Volumes/main/default/my-volume/babynames.csv
databricks fs cat dbfs:/tmp/babynames.csv

In den folgenden Beispielen werden Fehler zurückgegeben, da versucht wird, den Inhalt eines Verzeichnisses statt einer Datei auszugeben:

databricks fs cat dbfs:/Volumes/main/default/my-volume
databricks fs cat dbfs:/tmp

Erstellen eines Verzeichnisses

Verwenden Sie den Befehl mkdir, um ein Verzeichnis zu erstellen. Geben Sie den Pfad zu dem Verzeichnis an, das in einem Volume oder im DBFS erstellt werden soll. Wenn das Verzeichnis bereits vorhanden ist, geschieht nichts. In den folgenden Beispielen wird ein Verzeichnis namens squirrel-data im Stammverzeichnis des angegebenen Volumes oder in einem Verzeichnis namens tmp im DBFS-Stammverzeichnis erstellt:

databricks fs mkdir dbfs:/Volumes/main/default/my-volume/squirrel-data
databricks fs mkdir dbfs:/tmp/squirrel-data

Kopieren eines Verzeichnisses oder einer Datei

Verwenden Sie den Befehl cp, um ein Verzeichnis oder eine Datei zu kopieren. Geben Sie die Pfade zum zu kopierenden Quellverzeichnis oder der zu kopierenden Datei und dem Ziel an. Sie können Verzeichnisse und Dateien zwischen dem lokalen Dateisystem und dem DBFS sowie Verzeichnisse und Dateien zwischen DBFS-Pfaden kopieren. Um vorhandene Dateien zu überschreiben, verwenden Sie die Option --overwrite. Verwenden Sie eine der Optionen --recursive oder -r, um Dateien in einem Verzeichnis rekursiv zu kopieren.

Der Befehl cp geht von file:/ aus, wenn file:/ nicht angegeben wird.

In den folgenden Beispielen wird ein Verzeichnis namens squirrel-data und dessen Inhalt aus einem lokalen Dateisystempfad in das Verzeichnis squirrels im Stammverzeichnis des angegebenen Volumes oder im DBFS-Stamm kopiert.

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

Im folgenden Beispiel wird eine Datei namens squirrels.csv aus einem lokalen Dateisystempfad in ein DBFS-Verzeichnis namens squirrel-data im angegebenen Volume oder DBFS-Stamm kopiert. Wenn die Datei bereits im Ziel vorhanden ist, wird sie überschrieben.

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

Entfernen eines Verzeichnisses

Verwenden Sie den Befehl rm, um ein Verzeichnis zu entfernen. Geben Sie den Pfad zum vorhandenen Verzeichnis im DBFS an. In den folgenden Beispielen wird ein Verzeichnis namens squirrel-data aus dem Stammverzeichnis des angegebenen Volumes oder einem Verzeichnis namens tmp im DBFS-Stammverzeichnis entfernt:

databricks fs rm dbfs:/Volumes/main/default/my-volume/squirrel-data
databricks fs rm dbfs:/tmp/squirrel-data

Wenn das Verzeichnis nicht vorhanden ist, geschieht nichts, und es wird kein Fehler zurückgegeben.

Wenn das Verzeichnis vorhanden, aber nicht leer ist, wird ein Fehler zurückgegeben. Verwenden Sie eine der Optionen --recursive oder -r, um ein nicht leeres Verzeichnis und seinen gesamten Inhalt zu entfernen. In den folgenden Beispielen wird ein nicht leeres Verzeichnis namens squirrel-data aus dem Stammverzeichnis des angegebenen Volumes oder einem Verzeichnis namens tmp im DBFS-Stammverzeichnis entfernt:

databricks fs rm dbfs:/Volumes/main/default/my-volume/squirrel-data -r
databricks fs rm dbfs:/tmp/squirrel-data -r