fs コマンド グループ

Note

この情報は、Databricks CLI バージョン 0.205 以降に適用されます。 Databricks CLI は Public Preview です。

Databricks CLI の使用には、Databricks ライセンスおよび使用状況データのプロビジョニングを含むDatabricks のプライバシーに関する通知が適用されます。

Databricks CLI 内の fs コマンド グループを使用すると、Unity Catalog 内のボリュームを自動化し、Databricks File System (DBFS) オブジェクトを自動化できます。

fs コマンドは、databricks fs に追加して実行します。 fs コマンドのヘルプを表示するには、databricks fs -h を実行してください。

fs コマンドでは、dbfs:/Volumes で始まるボリューム パスと、dbfs:/ で始まる DBFS のディレクトリ パスとファイル パスが必要です。

ディレクトリの内容を一覧表示する

ボリューム内または DBFS 内のディレクトリのコンテンツを一覧表示するには、ls コマンドを使用します。 ディレクトリへのパスを指定します。 次の例では、指定したボリュームのルートまたは DBFS ルート内のオブジェクトの名前を一覧表示します。

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

オブジェクトの種類、サイズ、Epoch からの変更時間 (ミリ秒単位)、およびオブジェクトの名前などの完全な情報を表示するには、--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 で作成されるディレクトリへのパスを指定します。 ディレクトリが既に存在する場合は、何も起こりません。 次の例では、squirrel-data という名前のディレクトリを、指定したボリュームのルートまたは DBFS ルート内の tmp ディレクトリに作成します。

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 の既存のディレクトリへのパスを指定します。 次の例では、squirrel-data という名前のディレクトリを、指定したボリュームのルートまたは DBFS ルート内の tmp ディレクトリから削除します。

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

ディレクトリが存在しない場合、何も起こらず、エラーは返されません。

ディレクトリが存在するものの空でない場合は、エラーが返されます。 空でないディレクトリとそのすべての内容を削除するには、--recursive または -r オプションを使用します。 次の例では、squirrel-data という名前の空でないディレクトリを、指定したボリュームのルートまたは DBFS ルート内の tmp ディレクトリから削除します。

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