Compartir a través de


Enumerar directorios y archivos

La operación List Directories and Files devuelve una lista de archivos o directorios en el recurso compartido o directorio especificados. Enumera el contenido solo para un único nivel de la jerarquía de directorios. Esta operación se admite en la versión 2025-05-05 y posteriores para recursos compartidos de archivos con el protocolo NFS habilitado.

Disponibilidad del protocolo

Protocolo habilitado para recursos compartidos de archivos Disponible
SMB sí
NFS sí

Pedir

La solicitud List Directories and Files se construye de la siguiente manera. Se recomienda usar HTTPS.

Método URI de solicitud Versión HTTP
OBTENER https://myaccount.file.core.windows.net/myshare/mydirectorypath?restype=directory&comp=list HTTP/1.1
OBTENER https://myaccount.file.core.windows.net/myshare/mydirectorypath?restype=directory&sharesnapshot=<DateTime>&comp=list HTTP/1.1

Reemplace los componentes de ruta de acceso que se muestran en el URI de solicitud por el suyo propio, como se indica a continuación:

Componente de ruta de acceso Descripción
myaccount Nombre de la cuenta de almacenamiento.
myshare Nombre del recurso compartido de archivos.
mydirectorypath Ruta de acceso al directorio.

Para más información sobre las restricciones de nomenclatura de rutas de acceso, consulte Nomenclatura y referencia a recursos compartidos, directorios, archivos y metadatos.

Parámetros de URI

Puede especificar los siguientes parámetros adicionales en el URI.

Parámetros comunes de URI

Parámetro Descripción
prefix Opcional. Versión 2016-05-31 y posteriores. Filtra los resultados para devolver solo los archivos y directorios que tienen nombres que comienzan con el prefijo especificado.
sharesnapshot Opcional. Versión 2017-04-17 y posteriores. El parámetro de instantánea de recurso compartido es un valor de DateTime opaco que, cuando está presente, especifica la instantánea de recurso compartido que se va a consultar para la lista de archivos y directorios.
marker Opcional. Valor de cadena que identifica la parte de la lista que se va a devolver con la siguiente operación de lista. La operación devuelve un valor de marcador dentro del cuerpo de la respuesta si la lista devuelta no se completó. A continuación, puede usar el valor del marcador en una llamada posterior para solicitar el siguiente conjunto de elementos de lista.

El valor del marcador es opaco para el cliente.
maxresults Opcional. Especifica el número máximo de archivos o directorios que se van a devolver. Si la solicitud no especifica maxresults, o especifica un valor mayor que 5000, el servidor devuelve hasta 5000 elementos.

Establecer maxresults en un valor menor o igual que cero da como resultado el código de respuesta de error 400 (solicitud incorrecta).
timeout Opcional. El parámetro timeout se expresa en segundos. Para más información, consulte configuración de tiempos de espera para las operaciones de Azure Files.

Parámetros de URI de SMB solo

Parámetro Descripción
include={Timestamps, ETag, Attributes, PermissionKey} Opcionalmente, disponible a partir de la versión 2020-04-08. Especifica una o varias propiedades que se van a incluir en la respuesta:
  • Timestamps
  • ETag
  • Attributes (atributos de archivo Win32)
  • PermissionKey

Para especificar más de una de estas opciones en el URI, debe separar cada opción con una coma codificada con dirección URL (%82).

Se supone que el encabezado x-ms-file-extended-info es true implícitamente cuando se especifica este parámetro.

Parámetros de solo URI de NFS

Ninguno.

Encabezados de solicitud

Los encabezados de solicitud obligatorios y opcionales se describen en las tablas siguientes:

Encabezados de solicitud comunes

Encabezado de solicitud Descripción
Authorization Obligatorio. Especifica el esquema de autorización, el nombre de la cuenta y la firma. Para más información, consulte Autorizar solicitudes a Azure Storage.
Date o x-ms-date Obligatorio. Especifica la hora universal coordinada (UTC) de la solicitud. Para más información, consulte Autorizar solicitudes a Azure Storage.
x-ms-version Necesario para todas las solicitudes autorizadas. Especifica la versión de la operación que se va a usar para esta solicitud. Esta operación se admite en la versión 2025-05-05 y posteriores para recursos compartidos de archivos con el protocolo NFS habilitado.

Para más información, consulte Control de versiones de para los servicios de Azure Storage.
x-ms-client-request-id Opcional. Proporciona un valor opaco generado por el cliente con un límite de caracteres de 1 kibibyte (KiB) que se registra en los registros cuando se configura el registro. Se recomienda encarecidamente usar este encabezado para correlacionar las actividades del lado cliente con las solicitudes que recibe el servidor. Para más información, consulte Monitor Azure Files.
x-ms-file-request-intent Obligatorio si Authorization encabezado especifica un token de OAuth. El valor aceptable es backup. Este encabezado especifica que se debe conceder el Microsoft.Storage/storageAccounts/fileServices/readFileBackupSemantics/action o Microsoft.Storage/storageAccounts/fileServices/writeFileBackupSemantics/action si se incluyen en la directiva de RBAC asignada a la identidad autorizada mediante el encabezado Authorization. Disponible para la versión 2022-11-02 y posteriores.
x-ms-allow-trailing-dot: { <Boolean> } Opcional. Versión 2022-11-02 y posteriores. El valor booleano especifica si se debe recortar o no un punto final presente en la dirección URL de solicitud.

Este encabezado se omite si el destino se encuentra en un recurso compartido de archivos con el protocolo NFS habilitado, que admite el punto final de forma predeterminada.

Para obtener más información, vea Asignar nombres y hacer referencia a recursos compartidos, directorios, archivos y metadatos.

Encabezados de solicitud solo SMB

Encabezado de solicitud Descripción
x-ms-file-extended-info: {true} Opcional. Versión 2020-04-08 y posteriores. Se supone que este encabezado es true implícitamente si el parámetro de consulta include no está vacío. Si es true, la propiedad Content-Length para los archivos que indica el tamaño del archivo estará actualizado.

Encabezados de solicitud solo NFS

Ninguno.

Cuerpo de la solicitud

Ninguno.

Respuesta

La respuesta incluye un código de estado HTTP, un conjunto de encabezados de respuesta y un cuerpo de respuesta en formato XML.

Código de estado

Una operación correcta devuelve el código de estado 200 (Correcto). Para obtener información sobre los códigos de estado, vea Códigos de estado y de error.

Encabezados de respuesta

La respuesta de esta operación incluye los encabezados de las tablas siguientes. La respuesta también puede incluir encabezados HTTP estándar adicionales. Todos los encabezados estándar se ajustan a la especificación del protocolo HTTP/1.1 de .

Encabezados de respuesta comunes

Encabezado de respuesta Descripción
Content-Type Especifica el formato en el que se devuelven los resultados. Actualmente, este valor es application/xml.
x-ms-request-id Este encabezado identifica de forma única la solicitud que se realizó y se puede usar para solucionar problemas de la solicitud. Para obtener más información, consulte Solución de problemas de operaciones de API.
x-ms-version Indica la versión de Azure Files que se usa para ejecutar la solicitud.
Date o x-ms-date Valor de fecha y hora UTC que indica la hora a la que se inició la respuesta. El servicio genera este valor.
x-ms-client-request-id Puede usar este encabezado para solucionar problemas de solicitudes y respuestas correspondientes. El valor de este encabezado es igual al valor del encabezado x-ms-client-request-id, si está presente en la solicitud. El valor tiene como máximo 1024 caracteres ASCII visibles. Si el encabezado x-ms-client-request-id no está presente en la solicitud, este encabezado no estará presente en la respuesta.

Encabezados de respuesta solo SMB

Ninguno.

Encabezados de respuesta solo NFS

Ninguno.

Cuerpo de la respuesta

El formato de la respuesta XML es el siguiente.

Los elementos Marker, ShareSnapshoty MaxResults solo están presentes si se especifican en el URI de solicitud. El elemento NextMarker tiene un valor solo si los resultados de la lista no están completos.

El elemento Content-Length se devuelve en la lista de archivos, que indica el tamaño del archivo. Sin embargo, este valor podría no ser up-to-date, ya que un cliente SMB o NFS podría haber modificado el archivo localmente. Es posible que el valor de Content-Length no refleje ese hecho hasta que se cierre el identificador o se rompa el bloqueo de operación SMB. Para recuperar los valores de propiedad actuales, use x-ms-file-extended-info: true para un directorio ubicado en un recurso compartido de archivos con el protocolo SMB habilitado, o llame a Obtener propiedades de archivo en el archivo específico.

En las versiones 2021-12-02 y posteriores, List Directory and Files codificará por porcentaje (por RFC 2396) todas las FileName, DirectoryName, Prefix o DirectoryPath valores de elemento que contienen caracteres no válidos en XML (en concreto, U+FFFE o U+FFFF). Si se codifica, el elemento Name, Prefix o EnumerationResults incluirá un atributo Encoded=true. Esto solo se produce para los valores de elemento Name que contienen los caracteres no válidos en XML, no los elementos Name restantes de la respuesta.

Cuerpo de respuesta para recursos compartidos de archivos con el protocolo SMB habilitado

<?xml version="1.0" encoding="utf-8"?>  
<EnumerationResults ServiceEndpoint="https://myaccount.file.core.windows.net/" ShareName="myshare" ShareSnapshot="date-time" DirectoryPath="directory-path">  
  <Marker>string-value</Marker>
  <Prefix>string-value</Prefix>
  <MaxResults>int-value</MaxResults>
  <DirectoryId>directory-id</DirectoryId>
  <Entries>
    <File>
      <FileId>file-id</FileId>
      <Name>file-name</Name>  
      <Properties>  
        <Content-Length>size-in-bytes</Content-Length>
        <CreationTime>datetime</CreationTime>
        <LastAccessTime>datetime</LastAccessTime>
        <LastWriteTime>datetime</LastWriteTime>
        <ChangeTime>datetime</ChangeTime>
        <Last-Modified>datetime</Last-Modified>
        <Etag>etag</Etag>
      </Properties>
      <Attributes>Archive|Hidden|Offline|ReadOnly</Attributes>
      <PermissionKey>4066528134148476695*1</PermissionKey>
    </File>  
    <Directory>
      <FileId>file-id</FileId>
      <Name>directory-name</Name>  
      <Properties>
        <CreationTime>datetime</CreationTime>
        <LastAccessTime>datetime</LastAccessTime>
        <LastWriteTime>datetime</LastWriteTime>
        <ChangeTime>datetime</ChangeTime>
        <Last-Modified>datetime</Last-Modified>
        <Etag>etag</Etag>
      </Properties>
      <Attributes>Archive|Hidden|Offline|ReadOnly</Attributes>
      <PermissionKey>4066528134148476695*1</PermissionKey>
    </Directory>  
  </Entries>  
  <NextMarker />  
</EnumerationResults>  

En las versiones 2020-04-08, 2020-06-12 y 2020-08-04, se devuelve FileId para archivos y directorios si el encabezado x-ms-file-extended-info es true. En la versión 2020-10-02 y versiones posteriores, siempre se devuelve FileId para archivos y directorios.

En la versión 2020-04-08, include={timestamps} devuelve las siguientes propiedades de marca de tiempo: CreationTime, LastAccessTimey LastWriteTime. En la versión 2020-06-12 y versiones posteriores, include={timestamps} devuelve las siguientes propiedades de marca de tiempo: CreationTime, LastAccessTime, LastWriteTime, ChangeTimey Last-Modified.

En la versión 2020-10-02 y posteriores, se devuelve DirectoryId en la respuesta. Especifica el FileId del directorio en el que se llama a la API.

Cuerpo de respuesta para recursos compartidos de archivos con el protocolo NFS habilitado

<?xml version="1.0" encoding="utf-8"?>
<EnumerationResults ServiceEndpoint="https://myaccount.file.core.windows.net/" ShareName="myshare" ShareSnapshot="date-time" DirectoryPath="directory-path">
  <Marker>string-value</Marker>
  <Prefix>string-value</Prefix>
  <MaxResults>int-value</MaxResults>
  <DirectoryId>directory-id</DirectoryId>
  <Entries>
    <File>
      <FileId>file-id</FileId>
      <Name>file-name</Name>
      <Properties>
        <Content-Length>size-in-bytes</Content-Length>
      </Properties>
    </File>
    <Directory>
      <FileId>file-id</FileId>
      <Name>directory-name</Name>
    </Directory>
  </Entries>
  <NextMarker />
</EnumerationResults>

Formato de fecha y hora y versión de API para campos de marca de tiempo

Elemento Formato datetime Valor de ejemplo Versión de API
CreationTime ISO 8601 2020-09-17T13:38:03.2740000Z 2020-04-08 y versiones posteriores
LastAccessTime ISO 8601 2020-09-17T13:38:03.2740000Z 2020-04-08 y versiones posteriores
LastWriteTime ISO 8601 2020-09-17T13:38:03.2740000Z 2020-04-08 y versiones posteriores
ChangeTime ISO 8601 2020-09-17T13:38:03.2740000Z 2020-06-12 y versiones posteriores
Last-Modified RFC 1123 Thu, 17 Sep 2020 13:38:07 GMT 2020-06-12 y versiones posteriores

Autorización

Solo el propietario de la cuenta puede llamar a esta operación.

Observaciones

El valor devuelto en el elemento Content-Length corresponde al valor del encabezado x-ms-content-length del archivo.

Cada Directory elemento devuelto cuenta hacia el resultado máximo, igual que lo hace cada elemento File. Los archivos y directorios se enumeran entremezclados, en orden léxico en el cuerpo de la respuesta.

La lista está limitada a un único nivel de la jerarquía de directorios. Para enumerar varios niveles, puede realizar varias llamadas de forma iterativa. Use el valor Directory devuelto de un resultado en una llamada posterior a List Directories and Files.

Consulte también

Operaciones de en directorios