Azure Storage での Azure CLI の使用Using the Azure CLI with Azure Storage

オープンソースであるクロスプラットフォーム Azure CLI では、Azure Platform で使用するための一連のコマンドが提供されます。The open-source, cross-platform Azure CLI provides a set of commands for working with the Azure platform. 豊富なデータ アクセスを含む、 Azure Portal にあるものと同じ機能の多くを使用できます。It provides much of the same functionality found in the Azure portal, including rich data access.

このガイドでは、Azure CLI を使用して Azure Storage アカウント内のリソースを扱ういくつかのタスクを実行する方法を紹介します。In this guide, we show you how to use the Azure CLI to perform several tasks working with resources in your Azure Storage account. このガイドを使用する前に、最新バージョンの CLI をダウンロードしてインストールするか、最新バージョンの CLI にアップグレードすることをお勧めします。We recommend that you download and install or upgrade to the latest version of the CLI before using this guide.

ガイド内の例では、Ubuntu 上での Bash シェルの使用を想定していますが、その他のプラットフォームでも同様に動作します。The examples in the guide assume the use of the Bash shell on Ubuntu, but other platforms should perform similarly.

Azure CLI のバージョンVersions of the Azure CLI

現在使用可能な Azure コマンド ライン インターフェイス (CLI) のバージョンは 2 つあります。There are two versions of the Azure Command-Line Interface (CLI) currently available:

  • Azure CLI:Azure CLI の現在のバージョン。Resource Manager デプロイ モデルで使用します。Azure CLI: The current version of the Azure CLI, for use with the Resource Manager deployment model.
  • Azure クラシック CLI:Azure CLI の旧バージョン。従来のデプロイ モデルでのみ使用できます。Azure classic CLI: An older version of the Azure CLI, intended for use only with the classic deployment model.

前提条件Prerequisites

このガイドでは、Azure Storage の基本概念を理解していることを前提としています。This guide assumes that you understand the basic concepts of Azure Storage. また、以下で指定されている、Azure および Storage サービスのアカウント作成要件を満たせることも前提としています。It also assumes that you're able to satisfy the account creation requirements that are specified below for Azure and the Storage service.

アカウントAccounts

Azure CLI のインストールInstall the Azure CLI

Azure CLI のインストールに関するページに記載されている手順に従って、Azure CLI をダウンロードしてインストールします。Download and install the Azure CLI by following the instructions outlined in Install the Azure CLI.

ヒント

インストールに問題がある場合は、その記事の「Installation Troubleshooting」 (インストールのトラブルシューティング) セクションと、GitHub の「インストールのトラブルシューティング」ガイドを確認してください。If you have trouble with the installation, check out the Installation Troubleshooting section of the article, and the Install Troubleshooting guide on GitHub.

CLI の使用Working with the CLI

CLI をインストールすると、コマンド ライン インターフェイス (Bash、Terminal、Command プロンプト) で az コマンドを使用して Azure CLI コマンドにアクセスできるようになります。Once you've installed the CLI, you can use the az command in your command-line interface (Bash, Terminal, Command Prompt) to access the Azure CLI commands. 基礎コマンドの完全な一覧を表示するには、az と入力します (次の出力例は切り捨てられています)。Type the az command to see a full list of the base commands (the following example output has been truncated):

     /\
    /  \    _____   _ _ __ ___
   / /\ \  |_  / | | | \'__/ _ \
  / ____ \  / /| |_| | | |  __/
 /_/    \_\/___|\__,_|_|  \___|


Welcome to the cool new Azure CLI!

Here are the base commands:

    account          : Manage subscriptions.
    acr              : Manage Azure container registries.
    acs              : Manage Azure Container Services.
    ad               : Synchronize on-premises directories and manage Azure Active Directory
                       resources.
    ...

コマンド ライン インターフェイスで az storage --help コマンドを実行すると、storage コマンドのサブグループが表示されます。In your command-line interface, execute the command az storage --help to list the storage command subgroups. サブグループの説明として、ストレージ リソースを操作する Azure CLI 機能の概要が表示されます。The descriptions of the subgroups provide an overview of the functionality the Azure CLI provides for working with your storage resources.

Group
    az storage: Durable, highly available, and massively scalable cloud storage.

Subgroups:
    account  : Manage storage accounts.
    blob     : Object storage for unstructured data.
    container: Manage blob storage containers.
    cors     : Manage Storage service Cross-Origin Resource Sharing (CORS).
    directory: Manage file storage directories.
    entity   : Manage table storage entities.
    file     : File shares that use the standard SMB 3.0 protocol.
    logging  : Manage Storage service logging information.
    message  : Manage queue storage messages.
    metrics  : Manage Storage service metrics.
    queue    : Use queues to effectively scale applications according to traffic.
    share    : Manage file shares.
    table    : NoSQL key-value storage using semi-structured datasets.

Azure サブスクリプションへの CLI の接続Connect the CLI to your Azure subscription

Azure サブスクリプション内のリソースを操作するには、最初に az login で Azure アカウントにログインする必要があります。To work with the resources in your Azure subscription, you must first log in to your Azure account with az login. ログインの方法はいくつかあります。There are several ways you can log in:

  • 対話型ログイン: az loginInteractive login: az login
  • ユーザー名とパスワードによるログイン: az login -u johndoe@contoso.com -p VerySecretLog in with user name and password: az login -u johndoe@contoso.com -p VerySecret
    • これは、Microsoft アカウントまたは多要素認証を使用するアカウントでは機能しません。This doesn't work with Microsoft accounts or accounts that use multi-factor authentication.
  • サービス プリンシパルによるログイン: az login --service-principal -u http://azure-cli-2016-08-05-14-31-15 -p VerySecret --tenant contoso.onmicrosoft.comLog in with a service principal: az login --service-principal -u http://azure-cli-2016-08-05-14-31-15 -p VerySecret --tenant contoso.onmicrosoft.com

Azure CLI サンプル スクリプトAzure CLI sample script

次に、Azure Storage リソースを操作するいくつかの基本的な Azure CLI コマンドを発行する、簡単なシェル スクリプトを使用します。Next, we'll work with a small shell script that issues a few basic Azure CLI commands to interact with Azure Storage resources. スクリプトはまず最初にストレージ アカウントに新しいコンテナーを作成し、そのコンテナーに任意の既存ファイルを (BLOB として) アップロードします。The script first creates a new container in your storage account, then uploads an existing file (as a blob) to that container. 次にコンテナー内のすべての BLOB を一覧表示し、最後に、指定したローカル コンピューター上の宛先にファイルをダウンロードします。It then lists all blobs in the container, and finally, downloads the file to a destination on your local computer that you specify.

#!/bin/bash
# A simple Azure Storage example script

export AZURE_STORAGE_ACCOUNT=<storage_account_name>
export AZURE_STORAGE_KEY=<storage_account_key>

export container_name=<container_name>
export blob_name=<blob_name>
export file_to_upload=<file_to_upload>
export destination_file=<destination_file>

echo "Creating the container..."
az storage container create --name $container_name

echo "Uploading the file..."
az storage blob upload --container-name $container_name --file $file_to_upload --name $blob_name

echo "Listing the blobs..."
az storage blob list --container-name $container_name --output table

echo "Downloading the file..."
az storage blob download --container-name $container_name --name $blob_name --file $destination_file --output table

echo "Done"

スクリプトの構成と実行Configure and run the script

  1. 好みのテキスト エディターを開き、前述のスクリプトをコピーしてエディターに貼り付けます。Open your favorite text editor, then copy and paste the preceding script into the editor.

  2. 次に、ご自分の設定内容に合わせてスクリプトの変数を更新します。Next, update the script's variables to reflect your configuration settings. 次のように値を置き換えます。Replace the following values as specified:

    • <storage_account_name> 使用するストレージ アカウントの名前。<storage_account_name> The name of your storage account.
    • <storage_account_key> ストレージ アカウントのプライマリまたはセカンダリ アクセス キー。<storage_account_key> The primary or secondary access key for your storage account.
    • <container_name> 新規作成するコンテナーの名前。たとえば "azure-cli-sample-container" など。<container_name> A name the new container to create, such as "azure-cli-sample-container".
    • <blob_name> コンテナー内の宛先 BLOB の名前。<blob_name> A name for the destination blob in the container.
    • <file_to_upload> ローカル コンピューター上のファイルのパス。たとえば "~/images/HelloWorld.png" など。<file_to_upload> The path to small file on your local computer, such as "~/images/HelloWorld.png".
    • <destination_file> 宛先ファイルへのパス。たとえば "~/downloadedImage.png" など。<destination_file> The destination file path, such as "~/downloadedImage.png".
  3. 必要な変数を更新したら、スクリプトを保存してエディターを終了します。After you've updated the necessary variables, save the script and exit your editor. スクリプト名を my_storage_sample.sh に指定したと仮定して、次のステップに移ります。The next steps assume you've named your script my_storage_sample.sh.

  4. 必要に応じてスクリプトを実行可能ファイルとしてマークします。chmod +x my_storage_sample.shMark the script as executable, if necessary: chmod +x my_storage_sample.sh

  5. スクリプトを実行します。Execute the script. たとえば Bash の場合は次のようになります。 ./my_storage_sample.shFor example, in Bash: ./my_storage_sample.sh

下記のような出力が表示され、スクリプトで指定した <destination_file> がローカル コンピューターに表示されるはずです。You should see output similar to the following, and the <destination_file> you specified in the script should appear on your local computer.

Creating the container...
{
  "created": true
}
Uploading the file...
Percent complete: %100.0
Listing the blobs...
Name       Blob Type      Length  Content Type              Last Modified
---------  -----------  --------  ------------------------  -------------------------
README.md  BlockBlob        6700  application/octet-stream  2017-05-12T20:54:59+00:00
Downloading the file...
Name
---------
README.md
Done

ヒント

上記の出力はテーブル形式です。The preceding output is in table format. CLI コマンドで --output 引数を指定するか、az configure でグローバルに設定することにより、使用する出力形式を指定することができます。You can specify which output format to use by specifying the --output argument in your CLI commands, or set it globally using az configure.

ストレージ アカウントを管理するManage storage accounts

新しいストレージ アカウントの作成Create a new storage account

Azure Storage を使用するには、ストレージ アカウントが必要です。To use Azure Storage, you need a storage account. コンピューターを構成してサブスクリプションに接続できるようにすると、新しい Azure ストレージ アカウントを作成することができます。You can create a new Azure Storage account after you've configured your computer to connect to your subscription.

az storage account create \
    --location <location> \
    --name <account_name> \
    --resource-group <resource_group> \
    --sku <account_sku>
  • --location [必須]: 場所。--location [Required]: Location. たとえば "米国西部" にします。For example, "West US".
  • --name [必須]: ストレージ アカウント名。--name [Required]: The storage account name. アカウント名に含めることができるのは、英小文字と数字のみで、文字数は 3 ~ 24 文字にする必要があります。The name must be 3 to 24 characters in length, and use only lowercase alphanumeric characters.
  • --resource-group [必須]: リソース グループの名前。--resource-group [Required]: Name of resource group.
  • --sku [必須]: ストレージ アカウントの SKU。--sku [Required]: The storage account SKU. 使用できる値は以下の通りです。Allowed values:
    • Premium_LRS
    • Standard_GRS
    • Standard_LRS
    • Standard_RAGRS
    • Standard_ZRS

既定の Azure ストレージ アカウント環境変数を設定するSet default Azure storage account environment variables

Azure サブスクリプションでは複数のストレージ アカウントを持つことができます。You can have multiple storage accounts in your Azure subscription. それらの 1 つを選んですべての後続のストレージ コマンドに使用するには、下記のように環境変数を設定します。To select one of them to use for all subsequent storage commands, you can set these environment variables:

まず、az storage account keys list コマンドを使用してストレージ アカウント キーを表示します。First, display your storage account keys by using the az storage account keys list command:

az storage account keys list \
    --account-name <account_name> \
    --resource-group <resource_group> \
    --output table

キーを確認できたので、キーとアカウント名を環境変数として定義することができます。Now that you have the key, you can define it and the account name as environment variables:

export AZURE_STORAGE_ACCOUNT=<account_name>
export AZURE_STORAGE_KEY=<key>

既定のストレージ アカウントを設定するもう 1 つの方法としては、接続文字列の使用があります。Another way to set a default storage account is by using a connection string. まず、show-connection-string コマンドで接続文字列を取得します。First, get the connection string with the show-connection-string command:

az storage account show-connection-string \
    --name <account_name> \
    --resource-group <resource_group>

出力された接続文字列をコピーし、AZURE_STORAGE_CONNECTION_STRING 環境変数を設定します (接続文字列を引用符で囲む必要がある可能性があります)。Then copy the output connection string and set the AZURE_STORAGE_CONNECTION_STRING environment variable (you might need to enclose the connection string in quotes):

export AZURE_STORAGE_CONNECTION_STRING="<connection_string>"

注意

この記事のこれ以降のセクションでは、すべての例は AZURE_STORAGE_ACCOUNT および AZURE_STORAGE_KEY 環境変数を設定済みであると仮定しています。All examples in the following sections of this article assume that you've set the AZURE_STORAGE_ACCOUNT and AZURE_STORAGE_KEY environment variables.

BLOB を作成および管理するCreate and manage blobs

Azure Blob Storage は、HTTP または HTTPS 経由で世界中のどこからでもアクセスできるテキストやバイナリ データなど、大量の非構造化データを格納するためのサービスです。Azure Blob storage is a service for storing large amounts of unstructured data, such as text or binary data, that can be accessed from anywhere in the world via HTTP or HTTPS. このセクションでは、Azure BLOB ストレージの概念について理解しているユーザーを対象としています。This section assumes that you are already familiar with Azure Blob storage concepts. 詳しくは、「.NET を使用して Azure Blob Storage を使用する」と「BLOB サービスの概念」をご覧ください。For detailed information, see Get started with Azure Blob storage using .NET and Blob Service Concepts.

コンテナーを作成するCreate a container

Azure Storage のすべての BLOB はコンテナーに格納する必要があります。Every blob in Azure storage must be in a container. 次の az storage container create コマンドを使用して、コンテナーを作成できます。You can create a container by using the az storage container create command:

az storage container create --name <container_name>

オプションの --public-access 引数を指定して、3 つのレベルの読み取りアクセスのいずれかを新しいコンテナーに設定することができます。You can set one of three levels of read access for a new container by specifying the optional --public-access argument:

  • off (既定値): コンテナー データはアカウント所有者のみがアクセスできます。off (default): Container data is private to the account owner.
  • blob:BLOB に対するパブリック読み取りアクセスです。blob: Public read access for blobs.
  • container:コンテナー全体に対するパブリックの読み取りおよび一覧表示アクセスです。container: Public read and list access to the entire container.

詳細については、「 コンテナーと BLOB への匿名読み取りアクセスを管理する」を参照してください。For more information, see Manage anonymous read access to containers and blobs.

コンテナーに BLOB をアップロードするUpload a blob to a container

Azure Blob Storage では、ブロック BLOB、追加BLOB、ページ BLOB がサポートされています。Azure Blob storage supports block, append, and page blobs. blob upload コマンドを使用して、コンテナーに BLOB をアップロードできます。Upload blobs to a container by using the blob upload command:

az storage blob upload \
    --file <local_file_path> \
    --container-name <container_name> \
    --name <blob_name>

ストレージ アカウントのコンテナー内にあるフォルダーに直接アップロードする場合は、--name <blob_name>--name <folder/blob_name> に置き換えます。If you would like to upload directly into a folder inside the container in your storage account, replace --name <blob_name> with --name <folder/blob_name>.

既定では blob upload コマンドは *.vhd ファイルをページ BLOB にアップロードし、それ以外の場合はブロック BLOB にアップロードします。By default, the blob upload command uploads *.vhd files to page blobs, or block blobs otherwise. BLOB アップロード時に別の種類を指定するには、--type 引数を使用することができます。使用できる値は appendblock、および page です。To specify another type when you upload a blob, you can use the --type argument--allowed values are append, block, and page.

異なる BLOB の種類の詳細については、「Understanding Block Blobs, Append Blobs, and Page Blobs」 (ブロック BLOB、追加 BLOB、ページ BLOB について) をご覧ください。For more information on the different blob types, see Understanding Block Blobs, Append Blobs, and Page Blobs.

コンテナーから BLOB をダウンロードするDownload a blob from a container

この例は、BLOB をコンテナーからダウンロードする方法を示しています。This example demonstrates how to download a blob from a container:

az storage blob download \
    --container-name mycontainer \
    --name myblob.png \
    --file ~/mydownloadedblob.png

コンテナー内の BLOB を一覧表示するList the blobs in a container

コンテナー内の BLOB は、az storage blob list コマンドで一覧表示します。List the blobs in a container with the az storage blob list command.

az storage blob list \
    --container-name mycontainer \
    --output table

BLOB をコピーするCopy blobs

BLOB は、ストレージ アカウント内、またはストレージ アカウントとリージョン間にまたがって非同期的にコピーできます。You can copy blobs within or across storage accounts and regions asynchronously.

次の例は、BLOB をあるストレージ アカウントから別のストレージ アカウントにコピーする方法を示しています。The following example demonstrates how to copy blobs from one storage account to another. まず、ソース ストレージ アカウントにコンテナーを作成し、その BLOB にパブリックな読み取りアクセス権を指定します。We first create a container in the source storage account, specifying public read-access for its blobs. 次にコンテナーにファイルをアップロードし、最後にそのコンテナーから目的のストレージ アカウントのコンテナーに BLOB をコピーします。Next, we upload a file to the container, and finally, copy the blob from that container into a container in the destination storage account.

# Create container in source account
az storage container create \
    --account-name sourceaccountname \
    --account-key sourceaccountkey \
    --name sourcecontainer \
    --public-access blob

# Upload blob to container in source account
az storage blob upload \
    --account-name sourceaccountname \
    --account-key sourceaccountkey \
    --container-name sourcecontainer \
    --file ~/Pictures/sourcefile.png \
    --name sourcefile.png

# Copy blob from source account to destination account (destcontainer must exist)
az storage blob copy start \
    --account-name destaccountname \
    --account-key destaccountkey \
    --destination-blob destfile.png \
    --destination-container destcontainer \
    --source-uri https://sourceaccountname.blob.core.windows.net/sourcecontainer/sourcefile.png

この例のコピー操作が成功するためには、目的のストレージ アカウントにコピー先となるコンテナーがあらかじめ存在していることが必要です。In the above example, the destination container must already exist in the destination storage account for the copy operation to succeed. 加えて、--source-uri 引数に指定したコピー元の BLOB が、Shared Access Signature (SAS) トークンを含んでいるか、この例のようにパブリックにアクセス可能であることが必要です。Additionally, the source blob specified in the --source-uri argument must either include a shared access signature (SAS) token, or be publicly accessible, as in this example.

BLOB を削除するDelete a blob

BLOB を削除するには、blob delete コマンドを使用します。To delete a blob, use the blob delete command:

az storage blob delete --container-name <container_name> --name <blob_name>

ファイル共有を作成および管理するCreate and manage file shares

Azure File は、サーバー メッセージ ブロック (SMB) プロトコルを使用して、アプリケーション用の共有ストレージを提供します。Azure Files offers shared storage for applications using the Server Message Block (SMB) protocol. Microsoft Azure の仮想マシンとクラウド サービスでは、オンプレミスのアプリケーションと同じように、ファイル データを共有できます。Microsoft Azure virtual machines and cloud services, as well as on-premises applications, can share file data via mounted shares. ファイル共有とファイル データは、Azure CLI を使用して管理できます。You can manage file shares and file data via the Azure CLI. Azure Files の詳細については、Azure Files の概要に関する記事をご覧ください。For more information on Azure Files, see Introduction to Azure Files.

ファイル共有を作成するCreate a file share

Azure ファイル共有は、Azure 内の SMB ファイル共有です。An Azure file share is an SMB file share in Azure. ディレクトリとファイルはすべて、ファイル共有に作成する必要があります。All directories and files must be created in a file share. アカウントに含まれる共有の数と、共有に格納できるファイル数には制限がなく、ストレージ アカウントの容量の上限まで増やすことができます。An account can contain an unlimited number of shares, and a share can store an unlimited number of files, up to the capacity limits of the storage account. 次の例では、 myshareという名前のファイル共有を作成します。The following example creates a file share named myshare.

az storage share create --name myshare

ディレクトリを作成するCreate a directory

ディレクトリは、Azure ファイル共有の階層構造を示します。A directory provides a hierarchical structure in an Azure file share. 次の例では、ファイル共有に myDir という名前のディレクトリを作成します。The following example creates a directory named myDir in the file share.

az storage directory create --name myDir --share-name myshare

ディレクトリ パスには複数のレベルを含めることができます (dir1/dir2)。A directory path can include multiple levels, for example dir1/dir2. ただし、サブディレクトリを作成する前に、すべての親ディレクトリが存在することを確認する必要があります。However, you must ensure that all parent directories exist before creating a subdirectory. たとえば、パス dir1/dir2の場合、最初にdir1 ディレクトリを作成した後、dir2 ディレクトリを作成する必要があります。For example, for path dir1/dir2, you must first create directory dir1, then create directory dir2.

共有にローカル ファイルをアップロードするUpload a local file to a share

次の例では、 ~/temp/samplefile.txt から myshare ファイル共有のルートにファイルをアップロードします。The following example uploads a file from ~/temp/samplefile.txt to root of the myshare file share. --source 引数で、アップロードする既存のローカル ファイルを指定します。The --source argument specifies the existing local file to upload.

az storage file upload --share-name myshare --source ~/temp/samplefile.txt

ディレクトリ作成と同様に、共有内のディレクトリ パスを指定して、共有内の既存のディレクトリにファイルをアップロードすることができます。As with directory creation, you can specify a directory path within the share to upload the file to an existing directory within the share:

az storage file upload --share-name myshare/myDir --source ~/temp/samplefile.txt

共有内のファイル サイズは最大 1 TB です。A file in the share can be up to 1 TB in size.

共有内のファイルを一覧表示するList the files in a share

az storage file list コマンドを使用して、共有内のファイルとディレクトリを一覧表示できます。You can list files and directories in a share by using the az storage file list command:

# List the files in the root of a share
az storage file list --share-name myshare --output table

# List the files in a directory within a share
az storage file list --share-name myshare/myDir --output table

# List the files in a path within a share
az storage file list --share-name myshare --path myDir/mySubDir/MySubDir2 --output table

ファイルのコピーCopy files

ファイルを別のファイルにコピーしたり、ファイルを BLOB にコピーしたり、BLOB をファイルにコピーしたりすることができます。You can copy a file to another file, a file to a blob, or a blob to a file. たとえば、別の共有にあるディレクトリにファイルをコピーします。For example, to copy a file to a directory in a different share:

az storage file copy start \
--source-share share1 --source-path dir1/file.txt \
--destination-share share2 --destination-path dir2/file.txt     

共有スナップショットの作成Create share snapshot

次のように、az storage share snapshot コマンドを使用して、共有スナップショットを削除できます。You can create a share snapshot by using the az storage share snapshot command:

az storage share snapshot -n <share name>

サンプル出力Sample Output

{
  "metadata": {},
  "name": "<share name>",
  "properties": {
    "etag": "\"0x8D50B7F9A8D7F30\"",
    "lastModified": "2017-10-04T23:28:22+00:00",
    "quota": null
  },
  "snapshot": "2017-10-04T23:28:35.0000000Z"
}

共有スナップショットの一覧表示List share snapshots

az storage share list --include-snapshots を使用して、特定の共有の共有スナップショットを一覧表示することができますYou may list share snapshots of a particular share using az storage share list --include-snapshots

az storage share list --include-snapshots

サンプル出力Sample Output

[
  {
    "metadata": null,
    "name": "sharesnapshotdefs",
    "properties": {
      "etag": "\"0x8D50B5F4005C975\"",
      "lastModified": "2017-10-04T19:36:46+00:00",
      "quota": 5120
    },
    "snapshot": "2017-10-04T19:44:13.0000000Z"
  },
  {
    "metadata": null,
    "name": "sharesnapshotdefs",
    "properties": {
      "etag": "\"0x8D50B5F4005C975\"",
      "lastModified": "2017-10-04T19:36:46+00:00",
      "quota": 5120
    },
    "snapshot": "2017-10-04T19:45:18.0000000Z"
  },
  {
    "metadata": null,
    "name": "sharesnapshotdefs",
    "properties": {
      "etag": "\"0x8D50B5F4005C975\"",
      "lastModified": "2017-10-04T19:36:46+00:00",
      "quota": 5120
    },
    "snapshot": null
  }
]

共有スナップショットの参照Browse share snapshots

az storage file list を使用して、特定の共有スナップショットを参照し、そのコンテンツを表示することもできます。You may also browse into a particular share snapshot to view its content using az storage file list. 共有名 --share-name <snare name> とタイムスタンプ --snapshot '2017-10-04T19:45:18.0000000Z' を指定する必要がありますOne has to specify the share name --share-name <snare name> and the timestamp --snapshot '2017-10-04T19:45:18.0000000Z'

az storage file list --share-name sharesnapshotdefs --snapshot '2017-10-04T19:45:18.0000000Z' -otable

サンプル出力Sample Output

Name            Content Length    Type    Last Modified
--------------  ----------------  ------  ---------------
HelloWorldDir/                    dir
IMG_0966.JPG    533568            file
IMG_1105.JPG    717711            file
IMG_1341.JPG    608459            file
IMG_1405.JPG    652156            file
IMG_1611.JPG    442671            file
IMG_1634.JPG    1495999           file
IMG_1635.JPG    974058            file

共有スナップショットからの復元Restore from share snapshots

az storage file download コマンドを使用して、共有スナップショットからファイルをコピーまたはダウンロードすることでファイルを復元できますYou can restore a file by copying or downloading a file from a share snapshot using az storage file download command

az storage file download --path IMG_0966.JPG --share-name sharesnapshotdefs --snapshot '2017-10-04T19:45:18.0000000Z'

サンプル出力Sample Output

{
  "content": null,
  "metadata": {},
  "name": "IMG_0966.JPG",
  "properties": {
    "contentLength": 533568,
    "contentRange": "bytes 0-533567/533568",
    "contentSettings": {
      "cacheControl": null,
      "contentDisposition": null,
      "contentEncoding": null,
      "contentLanguage": null,
      "contentType": "application/octet-stream"
    },
    "copy": {
      "completionTime": null,
      "id": null,
      "progress": null,
      "source": null,
      "status": null,
      "statusDescription": null
    },
    "etag": "\"0x8D50B5F49F7ACDF\"",
    "lastModified": "2017-10-04T19:37:03+00:00",
    "serverEncrypted": true
  }
}

共有スナップショットの削除Delete share snapshot

共有スナップショットのタイムスタンプを --snapshot パラメーターに指定した az storage share delete コマンドを使用して、共有スナップショットを削除することができます。You can delete a share snapshot by using the az storage share delete command by providing --snapshot parameter with share snapshot timestamp:

az storage share delete -n <share name> --snapshot '2017-10-04T23:28:35.0000000Z' 

サンプル出力Sample Output

{
  "deleted": true
}

次の手順Next steps

下記の資料で、Azure CLI の使用に関する詳細をさらにご覧いただけます。Here are some additional resources for learning more about working with the Azure CLI.