Azure CLI を使って Azure Data Lake Storage のディレクトリとファイルを管理

この記事では、階層型名前空間が有効になっているストレージ アカウントで、Azure CLI を使用してディレクトリとファイルを作成および管理する方法を示します。

この記事のすべての例は、階層的な名前空間が有効化されたストレージアカウントを前提としており、Microsoft Entra認証(--auth-mode login)を使用しています。

サンプル | フィードバックを送る

前提条件

  • Azure サブスクリプション。 詳細については、Azure 無料試用版の取得に関するページを参照してください。

  • 階層型名前空間が有効になっているストレージ アカウント。 作成するには、こちらの手順に従います。

  • Azure CLI バージョン 2.6.0 以降。

正しいバージョンの Azure CLI がインストールされていることを確認する

  1. Azure Cloud Shellを開くか、Azure CLIをローカルにインストールしている場合は、Windows PowerShellのようなコマンドコンソールアプリケーションを開いてください。

  2. インストールされているAzure CLIバージョンが2.6.0以降であるかを以下のコマンドで確認してください。

     az --version
    

    Azure CLIバージョンが2.6.0より古い場合は、後のバージョンをインストールしてください。 詳細については、「 Azure CLI のインストール」を参照してください。

アカウントに接続する

  1. Azure CLI をローカルで使用している場合は、login コマンドを実行します。

    az login
    

    CLIがデフォルトのブラウザを開けるなら、ブラウザを開いてAzureのサインインページを読み込みます。

    それ以外の場合は、 https://aka.ms/devicelogin でブラウザー ページを開き、ターミナルに表示されている認証コードを入力します。 次に、ブラウザーでアカウントの資格情報を使用してサインインします。

    さまざまな認証方法の詳細については、「Azure CLI を使用して BLOB またはキュー データへのアクセスを承認する」を参照してください。

  2. もしあなたのアイデンティティが複数のサブスクリプションに紐づいていて、サブスクリプションを選択するよう促さない場合は、アクティブなサブスクリプションを使いたいストレージアカウントのサブスクリプションに設定してください。 この例では、<subscription-id> プレースホルダーの値をサブスクリプションの ID に置き換えます。

    az account set --subscription <subscription-id>
    

    <subscription-id> プレースホルダーの値をサブスクリプションの ID に置き換えます。

この記事で示した例はMicrosoft Entra認証を示しています。 認証方法の詳細については、「Azure CLI を使用して BLOB またはキュー データへのアクセスを承認する」を参照してください。

コンテナーを作成する

コンテナーは、ファイルのファイル システムとして機能します。 az storage fs createコマンドを使って作成してください。

この例では、my-file-system という名前のコンテナーを作成します。

az storage fs create -n my-file-system --account-name mystorageaccount --auth-mode login

コンテナの存在を確認するには、 az storage fs show コマンドを実行してください。

コンテナーのプロパティを表示する

az storage fs showコマンドを使ってコンテナのプロパティをコンソールに出力してください。

az storage fs show -n my-file-system --account-name mystorageaccount --auth-mode login

コンテナーの内容を一覧表示する

コンテナの内容を一覧表示するには az storage fs file list コマンドを使ってください。

この例では、my-file-system という名前のコンテナーの内容を一覧表示します。

az storage fs file list -f my-file-system --account-name mystorageaccount --auth-mode login

コンテナーを削除する

コンテナを削除するには az storage fs delete コマンドを使ってください。

この例では、my-file-system という名前のコンテナーを削除します。

az storage fs delete -n my-file-system --account-name mystorageaccount --auth-mode login

ディレクトリを作成する

az storage fs directory createコマンドを使ってディレクトリ参照を作成します。

この例では、my-directory という名前のアカウントにある my-file-system という名前のコンテナーに mystorageaccount という名前のディレクトリを追加します。

az storage fs directory create -n my-directory -f my-file-system --account-name mystorageaccount --auth-mode login

ディレクトリの存在を確認するには、 az storage fs directory exists コマンドを実行してください。

ディレクトリのプロパティを表示する

az storage fs directory showコマンドを使って、ディレクトリのプロパティをコンソールに出力してください。

az storage fs directory show -n my-directory -f my-file-system --account-name mystorageaccount --auth-mode login

ディレクトリ名の変更またはディレクトリの移動

ディレクトリの名前変更または移動を行うには、az storage fs directory move コマンドを使います。

この例では、同じコンテナー内でディレクトリの名前を my-directory から my-new-directory に変更します。

az storage fs directory move -n my-directory -f my-file-system --new-directory "my-file-system/my-new-directory" --account-name mystorageaccount --auth-mode login

この例では、ディレクトリを my-second-file-system という名前のコンテナーに移動します。

az storage fs directory move -n my-directory -f my-file-system --new-directory "my-second-file-system/my-new-directory" --account-name mystorageaccount --auth-mode login

ディレクトリを削除する

ディレクトリを削除するには、az storage fs directory delete コマンドを使います。

この例では、my-directory という名前のディレクトリを削除します。

az storage fs directory delete -n my-directory -f my-file-system --account-name mystorageaccount --auth-mode login

ディレクトリが存在するかどうか確認する

az storage fs directory exists コマンドを使って、コンテナ内に特定のディレクトリが存在するかどうかを判定します。

この例では、my-directory コンテナーに、my-file-system という名前のディレクトリが存在するかどうかを確認します。

az storage fs directory exists -n my-directory -f my-file-system --account-name mystorageaccount --auth-mode login

ディレクトリからダウンロードする

ディレクトリからファイルをダウンロードするには、az storage fs file download コマンドを使います。

この例では、upload.txt という名前のディレクトリから my-directory という名前のファイルをダウンロードします。

az storage fs file download -p my-directory/upload.txt -f my-file-system -d "C:\myFolder\download.txt" --account-name mystorageaccount --auth-mode login

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

az storage fs file list コマンドを使ってディレクトリの内容をリストアップしてください。

この例では、my-directory という名前のストレージ アカウントの my-file-system コンテナーにある mystorageaccount という名前のディレクトリの内容を一覧表示します。

az storage fs file list -f my-file-system --path my-directory --account-name mystorageaccount --auth-mode login

ファイルをディレクトリにアップロードする

ファイルをディレクトリにアップロードするには、az storage fs file upload コマンドを使います。

この例では、upload.txt という名前のファイルを my-directory という名前のディレクトリにアップロードします。

az storage fs file upload -s "C:\myFolder\upload.txt" -p my-directory/upload.txt -f my-file-system --account-name mystorageaccount --auth-mode login

ファイルがアップロードされたか確認するには、 az storage fs file list コマンドを実行してください。

ファイルのプロパティを表示する

az storage fs file showコマンドを使って、ファイルのプロパティをコンソールに出力します。

az storage fs file show -p my-file.txt -f my-file-system --account-name mystorageaccount --auth-mode login

ファイル名の変更またはファイルの移動

ファイルの名前変更または移動を行うには、az storage fs file move コマンドを使います。

この例では、ファイルの名前を my-file.txt から my-file-renamed.txt に変更します。

az storage fs file move -p my-file.txt -f my-file-system --new-path my-file-system/my-file-renamed.txt --account-name mystorageaccount --auth-mode login

ファイルを削除する

ファイルを削除するには、az storage fs file delete コマンドを使います。

この例は my-file.txtというファイルを削除します。

az storage fs file delete -p my-directory/my-file.txt -f my-file-system --account-name mystorageaccount --auth-mode login

関連項目