Uso de la CLI de Azure con Azure StorageUsing the Azure CLI with Azure Storage

La CLI de Azure es de código abierto y multiplataforma, y proporciona un conjunto de comandos para trabajar con la plataforma de Azure.The open-source, cross-platform Azure CLI provides a set of commands for working with the Azure platform. Proporciona muchas de las funciones que se encuentran en el portal de Azure, incluido el acceso a datos enriquecidos.It provides much of the same functionality found in the Azure portal, including rich data access.

En esta guía, se muestra cómo usar la CLI de Azure para realizar varias tareas trabajando con recursos de su cuenta de 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. Antes de usar esta guía es aconsejable descargar e instalar la versión de la CLI más reciente, o actualizarse a ella.We recommend that you download and install or upgrade to the latest version of the CLI before using this guide.

Los ejemplos de la guía se basan en el shell Bash en Ubuntu, pero el resto de las plataformas tienen un comportamiento semejante.The examples in the guide assume the use of the Bash shell on Ubuntu, but other platforms should perform similarly.

Nota

Las características descritas en este artículo están disponibles para las cuentas que tienen un espacio de nombres jerárquico solo si se inscribe en la versión preliminar pública del acceso multiprotocolo en Data Lake Storage.The features described in this article are available to accounts that have a hierarchical namespace only if you enroll in the public preview of multi-protocol access on Data Lake Storage. Para conocer las limitaciones, consulte el artículo Problemas conocidos.To review limitations, see the known issues article.

Versiones de la CLI de AzureVersions of the Azure CLI

Hay dos versiones de la interfaz de la línea de comandos (CLI) de Azure disponibles actualmente:There are two versions of the Azure Command-Line Interface (CLI) currently available:

  • CLI de Azure: la versión actual de la CLI de Azure, se usa con el modelo de implementación de Resource Manager.Azure CLI: The current version of the Azure CLI, for use with the Resource Manager deployment model.
  • CLI de Azure clásica: una versión anterior de la CLI de Azure, destinada a usarse solo con el modelo de implementación clásica.Azure classic CLI: An older version of the Azure CLI, intended for use only with the classic deployment model.

Requisitos previosPrerequisites

En esta guía se supone que conoce los conceptos básicos de Azure Storage.This guide assumes that you understand the basic concepts of Azure Storage. También se da por sentado que puede cumplir los requisitos para la creación de cuentas que se especifican a continuación en Azure y el servicio Almacenamiento.It also assumes that you're able to satisfy the account creation requirements that are specified below for Azure and the Storage service.

CuentasAccounts

Instalación de la CLI de AzureInstall the Azure CLI

Descargue e instale la CLI de Azure siguiendo las instrucciones indicadas en Instalación de la CLI de Azure.Download and install the Azure CLI by following the instructions outlined in Install the Azure CLI.

Sugerencia

Si tiene problemas con la instalación, consulte la sección Solución de problemas de instalación del artículo y la guía Install Troubleshooting (Solución de problemas de instalación) en GitHub.If you have trouble with the installation, check out the Installation Troubleshooting section of the article, and the Install Troubleshooting guide on GitHub.

Trabajo con la CLIWorking with the CLI

Cuando haya instalado la CLI, puede usar el comando az desde su interfaz de la línea de comandos (Bash, Terminal, símbolo del sistema) para obtener acceso a los comandos de la CLI de Azure.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. Escriba el comando az para ver una lista completa de los comandos base (se truncó el resultado del ejemplo siguiente):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.
    ...

En la interfaz de la línea de comandos, ejecute el comando az storage --help para ver una lista de comandos de los subgrupos de storage.In your command-line interface, execute the command az storage --help to list the storage command subgroups. Las descripciones de los subgrupos proporcionan información general de la función que proporciona la CLI de Azure para trabajar con sus recursos de almacenamiento.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.

Conexión de la CLI a una suscripción de AzureConnect the CLI to your Azure subscription

Para trabajar con los recursos de su suscripción de Azure, primero debe iniciar sesión en su cuenta de Azure con az login.To work with the resources in your Azure subscription, you must first log in to your Azure account with az login. Hay varias formas de iniciar sesión:There are several ways you can log in:

  • Inicio de sesión interactivo: az loginInteractive login: az login
  • Inicio de sesión con nombre de usuario y contraseña: az login -u johndoe@contoso.com -p VerySecretLog in with user name and password: az login -u johndoe@contoso.com -p VerySecret
    • Esta opción no es compatible con cuentas de Microsoft o cuentas que usan autenticación multifactor.This doesn't work with Microsoft accounts or accounts that use multi-factor authentication.
  • Inicio de sesión con una entidad de servicio: 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

Script de ejemplo de la CLI de AzureAzure CLI sample script

A continuación, vamos a trabajar con un pequeño script de shell que emite algunos comandos básicos de la CLI de Azure para interactuar con recursos de Azure Storage.Next, we'll work with a small shell script that issues a few basic Azure CLI commands to interact with Azure Storage resources. El script crea primero un nuevo contenedor en su cuenta de almacenamiento, y después carga un archivo existente (p. ej., un blob) en ese contenedor.The script first creates a new container in your storage account, then uploads an existing file (as a blob) to that container. Después enumera todos los blobs del contenedor y, por último, descarga el archivo en el destino que especifique del PC local.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"

Configuración y ejecución del scriptConfigure and run the script

  1. Abra el editor de texto que prefiera; copie y pegue el script anterior en el editor.Open your favorite text editor, then copy and paste the preceding script into the editor.

  2. Después actualice las variables del script para incluir sus opciones de configuración.Next, update the script's variables to reflect your configuration settings. Reemplace los valores siguientes tal y como se especifica:Replace the following values as specified:

    • <storage_account_name> El nombre de la cuenta de almacenamiento.<storage_account_name> The name of your storage account.
    • <storage_account_key> La clave de acceso principal o secundaria para su cuenta de almacenamiento.<storage_account_key> The primary or secondary access key for your storage account.
    • <container_name> Un nombre para el nuevo contenedor creado, por ejemplo, "contenedor-ejemplo-cli-azure".<container_name> A name the new container to create, such as "azure-cli-sample-container".
    • <blob_name> Un nombre para el blob de destino en el contenedor.<blob_name> A name for the destination blob in the container.
    • <file_to_upload> La ruta a un archivo pequeño en su PC local, como "~/imágenes/HolaMundo.png".<file_to_upload> The path to small file on your local computer, such as "~/images/HelloWorld.png".
    • <destination_file> La ruta de acceso del archivo de destino, como "~/imagenDescargada.png".<destination_file> The destination file path, such as "~/downloadedImage.png".
  3. Después de actualizar las variables necesarias, guarde el script y salga del editor.After you've updated the necessary variables, save the script and exit your editor. En los siguientes pasos se da por hecho que ha llamado al script my_storage_sample.sh.The next steps assume you've named your script my_storage_sample.sh.

  4. Marque el script como archivo ejecutable si es necesario: chmod +x my_storage_sample.shMark the script as executable, if necessary: chmod +x my_storage_sample.sh

  5. Ejecute el script.Execute the script. Por ejemplo, en Bash: ./my_storage_sample.shFor example, in Bash: ./my_storage_sample.sh

Debería ver un resultado similar al siguiente, y el <archivo_destino> que especificó en el script debería estar en su PC local.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

Sugerencia

El resultado anterior está en formato de tabla.The preceding output is in table format. Puede especificar el formato de salida que se usa indicando el argumento --output en los comandos de la CLI, o definirlo a nivel global mediante 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.

Administrar cuentas de almacenamientoManage storage accounts

Creación de una cuenta de almacenamiento nuevaCreate a new storage account

Para usar Azure Storage, necesita una cuenta de almacenamiento.To use Azure Storage, you need a storage account. Puede crear una nueva cuenta de Azure Storage después de configurar el equipo para que pueda conectarse a su suscripción.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 [obligatorio]: Ubicación.--location [Required]: Location. Por ejemplo, "Oeste de EE. UU.".For example, "West US".
  • --name [obligatorio]: El nombre de la cuenta de almacenamiento.--name [Required]: The storage account name. Debe tener entre 3 y 24 caracteres y usar solo caracteres alfanuméricos en minúsculas.The name must be 3 to 24 characters in length, and use only lowercase alphanumeric characters.
  • --resource-group [obligatorio]: Nombre del grupo de recursos.--resource-group [Required]: Name of resource group.
  • --sku [obligatorio]: SKU de cuenta de almacenamiento.--sku [Required]: The storage account SKU. Valores permitidos:Allowed values:
    • Premium_LRS
    • Standard_GRS
    • Standard_LRS
    • Standard_RAGRS
    • Standard_ZRS
    • Standard_GZRS (versión preliminar)Standard_GZRS (preview)
    • Standard_RAGZRS (versión preliminar)Standard_RAGZRS (preview)

Establecimiento variables de entorno para una cuenta de almacenamiento de Azure predeterminadaSet default Azure storage account environment variables

Puede tener varias cuentas de almacenamiento en su suscripción a Azure.You can have multiple storage accounts in your Azure subscription. Para seleccionar una con la que usar todos los comandos de almacenamiento subsiguientes, puede establecer estas variables de entorno:To select one of them to use for all subsequent storage commands, you can set these environment variables:

En primer lugar, muestre las claves de la cuenta de almacenamiento con el comando 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

Ahora que tiene la clave, puede definirla, así como el nombre de cuenta, como variables de entorno: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>

Otra forma de establecer una cuenta de almacenamiento predeterminada es mediante una cadena de conexión.Another way to set a default storage account is by using a connection string. En primer lugar, obtenga la cadena de conexión con el comando 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>

Después copie el resultado de la cadena de conexión y establezca la variable de entorno AZURE_STORAGE_CONNECTION_STRING (tal vez tenga que incluir la cadena de conexión entre comillas):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>"

Nota

Todos los ejemplos en las secciones siguientes de este artículo asumen que ha establecido las variables de entorno AZURE_STORAGE_ACCOUNT y 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.

Creación y administración de blobsCreate and manage blobs

El almacenamiento de blobs de Azure es un servicio para almacenar grandes cantidades de datos no estructurados, como texto o datos binarios, a los que puede acceder desde cualquier lugar del mundo a través de HTTP o 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. En esta sección se supone que ya está familiarizado con los conceptos del almacenamiento de Azure Blob Storage.This section assumes that you are already familiar with Azure Blob storage concepts. Para más información, consulte Introducción a Azure Blob Storage mediante .NET y Conceptos de Blob service.For detailed information, see Get started with Azure Blob storage using .NET and Blob Service Concepts.

Crear un contenedorCreate a container

Todos los blobs del almacenamiento de Azure han de estar en un contenedor.Every blob in Azure storage must be in a container. Puede crear un contenedor con el comando az storage container create:You can create a container by using the az storage container create command:

az storage container create --name <container_name>

Puede establecer uno de los tres niveles de acceso de lectura para un nuevo contenedor especificando el argumento opcional --public-access:You can set one of three levels of read access for a new container by specifying the optional --public-access argument:

  • off (predeterminado): los datos del contenedor son privados (del dueño de la cuenta).off (default): Container data is private to the account owner.
  • blob: acceso de lectura público solo para blobs.blob: Public read access for blobs.
  • container: acceso de lectura y lista públicos para todo el contenedor.container: Public read and list access to the entire container.

Para más información, consulte Administración del acceso de lectura anónimo a contenedores y blobs.For more information, see Manage anonymous read access to containers and blobs.

Carga de un blob en un contenedorUpload a blob to a container

Azure Blob Storage admite blobs de bloque, anexados y en páginas.Azure Blob storage supports block, append, and page blobs. Puede cargar blobs en un contenedor con el comando blob upload: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>

Si quiere cargarlos directamente en una carpeta dentro del contenedor de su cuenta de almacenamiento, reemplace --name <blob_name> por --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>.

De manera predeterminada, el comando blob upload carga archivos *.vhd blobs en páginas o blobs en bloques en caso contrario.By default, the blob upload command uploads *.vhd files to page blobs, or block blobs otherwise. Para especificar otro tipo al cargar un blob, puede usar el argumento --type; los valores permitidos son append, block y page.To specify another type when you upload a blob, you can use the --type argument--allowed values are append, block, and page.

Para obtener más información sobre los distintos tipos de blobs, consulte Understanding Block Blobs, Append Blobs, and Page Blobs (Descripción de los blobs en bloques, en anexos y en páginas).For more information on the different blob types, see Understanding Block Blobs, Append Blobs, and Page Blobs.

Descarga de un blob de un contenedorDownload a blob from a container

En el siguiente ejemplo se muestra cómo descargar blobs de un contenedor:This example demonstrates how to download a blob from a container:

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

Enumerar los blobs de un contenedorList the blobs in a container

Enumere los blobs de un contenedor con el comando 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

Copia de blobsCopy blobs

Los blobs se pueden copiar dentro de las cuentas de almacenamiento y regiones, o entre ellas, de forma asincrónica.You can copy blobs within or across storage accounts and regions asynchronously.

En el siguiente ejemplo se muestra cómo copiar blobs de una cuenta de almacenamiento a otra.The following example demonstrates how to copy blobs from one storage account to another. Primero creamos un contenedor en la cuenta de almacenamiento de origen, especificando el acceso de lectura público para sus blobs.We first create a container in the source storage account, specifying public read-access for its blobs. Después cargamos un archivo en el contenedor y, por último, copiamos el blob del contenedor en un contenedor de la cuenta de almacenamiento de destino.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

En el ejemplo anterior, el contenedor de destino ya debe existir en la cuenta de almacenamiento de destino para que la operación de copia se realice correctamente.In the above example, the destination container must already exist in the destination storage account for the copy operation to succeed. Además, el blob de origen especificado en el argumento --source-uri debe incluir un token de firma de acceso compartido (SAS), o ser accesible públicamente, como en este ejemplo.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.

Eliminar un blobDelete a blob

Para eliminar un blob, use el comando blob delete:To delete a blob, use the blob delete command:

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

Establecimiento del tipo de contenidoSet the content type

El tipo de contenido, también conocido como el tipo MIME, identifica el formato de los datos en el blob.The content type, also known as the MIME type, identifies the format of the data in the blob. Los exploradores y otro software usan el tipo de contenido para determinar cómo procesar los datos.Browsers and other software use the content type to determine how to process the data. Por ejemplo, el tipo de contenido de las imágenes PNG es image/png.For example, the content type for PNG images is image/png. Para establecer el tipo de contenido, use el comando blob update:To set the content type, use the blob update command:

az storage blob update
    --container-name <container_name> 
    --name <blob_name>
    --content-type <content_type>

Creación y administración de recursos compartidos de archivosCreate and manage file shares

Azure Files ofrece almacenamiento compartido para aplicaciones que usan el protocolo Bloque de mensajes del servidor (SMB).Azure Files offers shared storage for applications using the Server Message Block (SMB) protocol. Los servicios en la nube y las máquinas virtuales de Microsoft Azure, así como las aplicaciones locales, pueden compartir datos de archivos a través de recursos compartidos montados.Microsoft Azure virtual machines and cloud services, as well as on-premises applications, can share file data via mounted shares. Los recursos compartidos de archivos y datos de archivos se pueden administrar a través de la CLI de Azure.You can manage file shares and file data via the Azure CLI. Para obtener más información sobre Azure Files, consulte Introducción a Azure Files.For more information on Azure Files, see Introduction to Azure Files.

Creación de un recurso compartido de archivosCreate a file share

Un recurso compartido de archivos de Azure es un recurso compartido de archivos de SMB en Azure.An Azure file share is an SMB file share in Azure. Todos los directorios y archivos se deben crear en un recurso compartido de archivos.All directories and files must be created in a file share. Una cuenta puede contener un número ilimitado de recursos compartidos y un recurso compartido puede almacenar un número ilimitado de archivos, hasta los límites de capacidad de la cuenta de almacenamiento.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. En el siguiente ejemplo se crea un recurso compartido de archivos denominado myshare.The following example creates a file share named myshare.

az storage share create --name myshare

Creación de directoriosCreate a directory

Un directorio proporciona una estructura jerárquica para los recursos compartidos de archivos de Azure.A directory provides a hierarchical structure in an Azure file share. En el ejemplo siguiente se crea el directorio myDir en el recurso compartido de archivos.The following example creates a directory named myDir in the file share.

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

La ruta de acceso al directorio puede incluir varios niveles, por ejemplo, dir1/dir2.A directory path can include multiple levels, for example dir1/dir2. Pero debe asegurarse de que existen todos los directorios principales antes de crear un subdirectorio.However, you must ensure that all parent directories exist before creating a subdirectory. Por ejemplo, para la ruta de acceso dir1/dir2, primero se debe crear el directorio dir1 y luego el directorio dir2.For example, for path dir1/dir2, you must first create directory dir1, then create directory dir2.

Carga de un archivo local a un recurso compartidoUpload a local file to a share

El siguiente ejemplo carga un archivo de ~/temp/samplefile.txt en el raíz del recurso compartido de archivos recurso.The following example uploads a file from ~/temp/samplefile.txt to root of the myshare file share. El argumento --source especifica el archivo local existente para cargar.The --source argument specifies the existing local file to upload.

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

Al igual que sucede con la creación de directorios, puede especificar una ruta de directorio dentro del recurso compartido para cargar el archivo a un directorio existente dentro del recurso compartido: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

Los archivos del recurso compartido pueden tener un tamaño máximo de 1 TB.A file in the share can be up to 1 TB in size.

Enumeración de los archivos en un recurso compartidoList the files in a share

Puede enumerar archivos y directorios en un recurso compartido mediante el comando 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

Copiar archivosCopy files

Puede copiar un archivo en otro, un archivo en un blob o un blob en un archivo.You can copy a file to another file, a file to a blob, or a blob to a file. Por ejemplo, para copiar un archivo en un directorio de un recurso compartido diferente: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     

Creación de una instantánea de recurso compartidoCreate share snapshot

Puede crear una instantánea del recurso compartido con el comando 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>

Salida de ejemploSample 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"
}

Enumerar instantáneas del recurso compartidoList share snapshots

Puede enumerar las instantáneas del recurso compartido de un recurso compartido determinado mediante az storage share list --include-snapshotsYou may list share snapshots of a particular share using az storage share list --include-snapshots

az storage share list --include-snapshots

Salida de ejemploSample 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
  }
]

Examen de las instantáneas de recurso compartidoBrowse share snapshots

También puede examinar una instantánea del recurso compartido determinada para ver su contenido mediante az storage file list.You may also browse into a particular share snapshot to view its content using az storage file list. Uno debe especificar el nombre del recurso compartido --share-name <snare name> y la marca de tiempo --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

Salida de ejemploSample 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

Restauración desde instantáneas de recurso compartidoRestore from share snapshots

Puede restaurar un archivo copiando o descargando un archivo desde una instantánea del recurso compartido mediante el comando az storage file downloadYou 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'

Salida de ejemploSample 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
  }
}

Eliminación de una instantánea de recurso compartidoDelete share snapshot

Puede eliminar una instantánea del recurso compartido mediante el comando az storage share delete proporcionando el parámetro --snapshot con la marca de tiempo de la instantánea del recurso compartido: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' 

Salida de ejemploSample Output

{
  "deleted": true
}

Pasos siguientesNext steps

Estos son algunos recursos adicionales para obtener más información sobre cómo trabajar con la CLI de Azure.Here are some additional resources for learning more about working with the Azure CLI.