Compartilhar via


FileSystemClient Classe

Um cliente para interagir com um sistema de arquivos específico, mesmo que esse sistema de arquivos ainda não exista.

Para operações relacionadas a um diretório ou arquivo específico dentro desse sistema de arquivos, um cliente de diretório ou cliente de arquivo pode ser recuperado usando as get_directory_client funções ou get_file_client .

Herança
azure.storage.filedatalake._shared.base_client.StorageAccountHostsMixin
FileSystemClient

Construtor

FileSystemClient(account_url: str, file_system_name: str, credential: str | Dict[str, str] | AzureNamedKeyCredential | AzureSasCredential | TokenCredential | None = None, **kwargs: Any)

Parâmetros

account_url
str
Obrigatório

O URI para a conta de armazenamento.

file_system_name
str
Obrigatório

O sistema de arquivos para o diretório ou arquivos.

credential
valor padrão: None

As credenciais com as quais autenticar. Isso será opcional se a URL da conta já tiver um token SAS. O valor pode ser uma cadeia de caracteres de token SAS, uma instância de um AzureSasCredential ou AzureNamedKeyCredential de azure.core.credentials, uma chave de acesso compartilhado de conta ou uma instância de uma classe TokenCredentials de azure.identity. Se o URI do recurso já contiver um token SAS, isso será ignorado em favor de uma credencial explícita

  • exceto no caso de AzureSasCredential, em que os tokens SAS conflitantes gerarão um ValueError. Se estiver usando uma instância de AzureNamedKeyCredential, "name" deverá ser o nome da conta de armazenamento e "key" deverá ser a chave da conta de armazenamento.
api_version
str

A versão da API de Armazenamento a ser usada para solicitações. O valor padrão é a versão de serviço mais recente compatível com o SDK atual. A configuração para uma versão mais antiga pode resultar em redução da compatibilidade de recursos.

Exemplos

Obtenha um FileSystemClient de um DataLakeServiceClient existente.


   # Instantiate a DataLakeServiceClient using a connection string
   from azure.storage.filedatalake import DataLakeServiceClient
   datalake_service_client = DataLakeServiceClient.from_connection_string(self.connection_string)

   # Instantiate a FileSystemClient
   file_system_client = datalake_service_client.get_file_system_client("mynewfilesystem")

Variáveis

url
str

A URL completa do ponto de extremidade para o sistema de arquivos, incluindo o token SAS, se usado.

primary_endpoint
str

A URL completa do ponto de extremidade primário.

primary_hostname
str

O nome do host do ponto de extremidade primário.

Métodos

acquire_lease

Solicita uma nova concessão. Se o sistema de arquivos não tiver uma concessão ativa, o serviço DataLake criará uma concessão no sistema de arquivos e retornará uma nova ID de concessão.

close

Esse método é para fechar os soquetes abertos pelo cliente. Ele não precisa ser usado ao usar com um gerenciador de contexto.

create_directory

Criar diretório

create_file

Criar arquivo

create_file_system

Cria um novo sistema de arquivos na conta especificada.

Se o sistema de arquivos com o mesmo nome já existir, um ResourceExistsError será gerado. Esse método retorna um cliente com o qual interagir com o sistema de arquivos recém-criado.

delete_directory

Marca o caminho especificado para exclusão.

delete_file

Marca o arquivo especificado para exclusão.

delete_file_system

Marca o sistema de arquivos especificado para exclusão.

O sistema de arquivos e todos os arquivos contidos nele serão excluídos posteriormente durante a coleta de lixo. Se o sistema de arquivos não for encontrado, um ResourceNotFoundError será gerado.

exists

Retornará True se houver um sistema de arquivos e retornará False caso contrário.

from_connection_string

Crie FileSystemClient a partir de uma cadeia de conexão.

:return a FileSystemClient :rtype ~azure.storage.filedatalake.FileSystemClient

get_directory_client

Faça com que um cliente interaja com o diretório especificado.

O diretório ainda não precisa existir.

get_file_client

Faça com que um cliente interaja com o arquivo especificado.

O arquivo ainda não precisa existir.

get_file_system_access_policy

Obtém as permissões para o sistema de arquivos especificado. As permissões indicam se os dados do sistema de arquivos podem ser acessados publicamente.

get_file_system_properties

Retorna todos os metadados definidos pelo usuário e as propriedades do sistema para o sistema de arquivos especificado. Os dados retornados não incluem a lista de caminhos do sistema de arquivos.

get_paths

Retorna um gerador para listar os caminhos (podem ser arquivos ou diretórios) no sistema de arquivos especificado. O gerador seguirá lentamente os tokens de continuação retornados pelo serviço.

list_deleted_paths

Retorna um gerador para listar os caminhos excluídos (arquivo ou diretório) no sistema de arquivos especificado. O gerador seguirá lentamente os tokens de continuação retornados pelo serviço.

Novidades na versão 12.4.0: essa operação foi introduzida na versão de API '2020-06-12'.

set_file_system_access_policy

Define as permissões para o sistema de arquivos especificado ou políticas de acesso armazenadas que podem ser usadas com Assinaturas de Acesso Compartilhado. As permissões indicam se os arquivos em um sistema de arquivos podem ser acessados publicamente.

set_file_system_metadata

Define um ou mais pares nome-valor definidos pelo usuário para o sistema de arquivos especificado. Cada chamada para essa operação substitui todos os metadados existentes anexados ao sistema de arquivos. Para remover todos os metadados do sistema de arquivos, chame essa operação sem um dict de metadados.

acquire_lease

Solicita uma nova concessão. Se o sistema de arquivos não tiver uma concessão ativa, o serviço DataLake criará uma concessão no sistema de arquivos e retornará uma nova ID de concessão.

acquire_lease(lease_duration: int = -1, lease_id: str | None = None, **kwargs) -> DataLakeLeaseClient

Parâmetros

lease_duration
int
Obrigatório

Especifica a duração de concessão, em segundos, ou um negativo (- 1) para uma concessão que nunca expira. A duração de uma concessão não infinita pode ser entre 15 e 60 segundos. Uma duração de concessão não pode ser alterada usando renovação ou alteração. O padrão é -1 (concessão infinita).

lease_id
str
Obrigatório

ID proposta da concessão, em um formato de cadeia de caracteres GUID. O serviço DataLake retornará 400 (solicitação inválida) se a ID de concessão proposta não estiver no formato correto.

if_modified_since
datetime

Um valor Datetime. O Azure espera que o valor de data passado seja UTC. Se o fuso horário for incluído, todos os datetimes não UTC serão convertidos em UTC. Se uma data for passada sem informações de fuso horário, será considerado UTC. Especifique esse cabeçalho para executar a operação somente se o recurso tiver sido modificado desde a hora especificada.

if_unmodified_since
datetime

Um valor Datetime. O Azure espera que o valor de data passado seja UTC. Se o fuso horário for incluído, todos os datetimes não UTC serão convertidos em UTC. Se uma data for passada sem informações de fuso horário, será considerado UTC. Especifique esse cabeçalho para executar a operação somente se o recurso não tiver sido modificado desde a data/hora especificada.

etag
str

Um valor de ETag ou o caractere curinga (*). Usado para marcar se o recurso foi alterado e agir de acordo com a condição especificada pelo parâmetro match_condition.

match_condition
MatchConditions

A condição de correspondência a ser usada na etag.

timeout
int

Define o tempo limite do lado do servidor para a operação em segundos. Para obter mais informações, confira https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Esse valor não é rastreado ou validado no cliente. Para configurar tempos limite de rede do lado do cliente, consulte aqui.

Retornos

Um objeto DataLakeLeaseClient, que pode ser executado em um gerenciador de contexto.

Tipo de retorno

Exemplos

Adquirir uma concessão no sistema de arquivos.


   # Acquire a lease on the file system
   lease = file_system_client.acquire_lease()

   # Delete file system by passing in the lease
   file_system_client.delete_file_system(lease=lease)

close

Esse método é para fechar os soquetes abertos pelo cliente. Ele não precisa ser usado ao usar com um gerenciador de contexto.

close() -> None

create_directory

Criar diretório

create_directory(directory: DirectoryProperties | str, metadata: Dict[str, str] | None = None, **kwargs) -> DataLakeDirectoryClient

Parâmetros

directory
str ou DirectoryProperties
Obrigatório

O diretório com o qual interagir. Pode ser o nome do diretório ou uma instância de DirectoryProperties.

metadata
dict(str, str)
Obrigatório

Pares de nome-valor associados ao arquivo como metadados.

content_settings
ContentSettings

Objeto ContentSettings usado para definir propriedades de caminho.

lease
DataLakeLeaseClient ou str

Obrigatório se o arquivo tiver uma concessão ativa. O valor pode ser um objeto DataLakeLeaseClient ou a ID de concessão como uma cadeia de caracteres.

umask
str

Opcional e válido somente se o Namespace Hierárquico estiver habilitado para a conta. Ao criar um arquivo ou diretório e a pasta pai não tem uma ACL padrão, a umask restringe as permissões do arquivo ou diretório a serem criadas. A permissão resultante é fornecida por p & ^u, em que p é a permissão e você é a umask. Por exemplo, se p for 0777 e você for 0057, a permissão resultante será 0720. A permissão padrão é 0777 para um diretório e 0666 para um arquivo. A umask padrão é 0027. A umask deve ser especificada em notação octal de 4 dígitos (por exemplo, 0766).

owner
str

O proprietário do arquivo ou diretório.

group
str

O grupo proprietário do arquivo ou diretório.

acl
str

Define os direitos de controle de acesso POSIX em arquivos e diretórios. O valor é uma lista separada por vírgulas de entradas de controle de acesso. Cada ACE (entrada de controle de acesso) consiste em um escopo, um tipo, um identificador de usuário ou grupo e permissões no formato "[scope:][type]:[id]:[permissions]".

lease_id
str

ID proposta da concessão, em um formato de cadeia de caracteres GUID. O serviço DataLake retornará 400 (solicitação inválida) se a ID de concessão proposta não estiver no formato correto.

lease_duration
int

Especifica a duração de concessão, em segundos, ou um negativo (- 1) para uma concessão que nunca expira. A duração de uma concessão não infinita pode ser entre 15 e 60 segundos. Uma duração de concessão não pode ser alterada usando renovação ou alteração.

permissions
str

Opcional e válido somente se o Namespace Hierárquico estiver habilitado para a conta. Define permissões de acesso POSIX para o proprietário do arquivo, o grupo proprietário do arquivo e outros. Cada classe pode receber permissão de leitura, gravação ou execução. O bit autoadesiva também tem suporte. Há suporte para notação octal simbólica (rwxrw-rw-) e octal de 4 dígitos (por exemplo, 0766).

if_modified_since
datetime

Um valor Datetime. O Azure espera que o valor de data passado seja UTC. Se o fuso horário for incluído, todos os datetimes não UTC serão convertidos em UTC. Se uma data for passada sem informações de fuso horário, será considerado UTC. Especifique esse cabeçalho para executar a operação somente se o recurso tiver sido modificado desde a hora especificada.

if_unmodified_since
datetime

Um valor Datetime. O Azure espera que o valor de data passado seja UTC. Se o fuso horário for incluído, todos os datetimes não UTC serão convertidos em UTC. Se uma data for passada sem informações de fuso horário, será considerado UTC. Especifique esse cabeçalho para executar a operação somente se o recurso não tiver sido modificado desde a data/hora especificada.

etag
str

Um valor de ETag ou o caractere curinga (*). Usado para marcar se o recurso foi alterado e agir de acordo com a condição especificada pelo parâmetro match_condition.

match_condition
MatchConditions

A condição de correspondência a ser usada na etag.

timeout
int

Define o tempo limite do lado do servidor para a operação em segundos. Para obter mais informações, confira https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Esse valor não é rastreado ou validado no cliente. Para configurar tempos limite de rede do lado do cliente, confira aqui.

Retornos

DataLakeDirectoryClient

Exemplos

Crie um diretório no sistema de arquivos.


   directory_client = file_system_client.create_directory("mydirectory")

create_file

Criar arquivo

create_file(file: FileProperties | str, **kwargs) -> DataLakeFileClient

Parâmetros

file
str ou FileProperties
Obrigatório

O arquivo com o qual interagir. Isso pode ser o nome do arquivo ou uma instância de FileProperties.

content_settings
ContentSettings
Obrigatório

Objeto ContentSettings usado para definir propriedades de caminho.

metadata
dict(str, str)
Obrigatório

Pares de nome-valor associados ao arquivo como metadados.

lease
DataLakeLeaseClient ou str

Obrigatório se o arquivo tiver uma concessão ativa. O valor pode ser um objeto DataLakeLeaseClient ou a ID de concessão como uma cadeia de caracteres.

umask
str

Opcional e válido somente se o Namespace Hierárquico estiver habilitado para a conta. Ao criar um arquivo ou diretório e a pasta pai não tem uma ACL padrão, a umask restringe as permissões do arquivo ou diretório a ser criado. A permissão resultante é fornecida por p & ^u, em que p é a permissão e você é a umask. Por exemplo, se p for 0777 e você for 0057, a permissão resultante será 0720. A permissão padrão é 0777 para um diretório e 0666 para um arquivo. A umask padrão é 0027. A umask deve ser especificada em notação octal de 4 dígitos (por exemplo, 0766).

owner
str

O proprietário do arquivo ou diretório.

group
str

O grupo proprietário do arquivo ou diretório.

acl
str

Define os direitos de controle de acesso POSIX em arquivos e diretórios. O valor é uma lista separada por vírgulas de entradas de controle de acesso. Cada ACE (entrada de controle de acesso) consiste em um escopo, um tipo, um identificador de usuário ou grupo e permissões no formato "[scope:][type]:[id]:[permissions]".

lease_id
str

ID proposta da concessão, em um formato de cadeia de caracteres GUID. O serviço DataLake retornará 400 (solicitação inválida) se a ID de concessão proposta não estiver no formato correto.

lease_duration
int

Especifica a duração de concessão, em segundos, ou um negativo (- 1) para uma concessão que nunca expira. A duração de uma concessão não infinita pode ser entre 15 e 60 segundos. Uma duração de concessão não pode ser alterada usando renovação ou alteração.

expires_on
datetime ou int

O tempo para definir o arquivo como expirado. Se o tipo de expires_on for int, o tempo de expiração será definido como o número de milissegundos decorridos do tempo de criação. Se o tipo de expires_on for datetime, o tempo de validade será definido como absoluto à hora fornecida. Se nenhuma informação de fuso horário for fornecida, isso será interpretado como UTC.

permissions
str

Opcional e válido somente se o Namespace Hierárquico estiver habilitado para a conta. Define permissões de acesso POSIX para o proprietário do arquivo, o grupo proprietário do arquivo e outros. Cada classe pode receber permissão de leitura, gravação ou execução. Também há suporte para o bit sticky. Há suporte para notação octal simbólica (rwxrw-rw-) e octal de 4 dígitos (por exemplo, 0766).

if_modified_since
datetime

Um valor Datetime. O Azure espera que o valor de data passado seja UTC. Se o fuso horário estiver incluído, todos os datetimes não UTC serão convertidos em UTC. Se uma data for passada sem informações de fuso horário, supõe-se que seja UTC. Especifique esse cabeçalho para executar a operação somente se o recurso tiver sido modificado desde a hora especificada.

if_unmodified_since
datetime

Um valor Datetime. O Azure espera que o valor de data passado seja UTC. Se o fuso horário estiver incluído, todos os datetimes não UTC serão convertidos em UTC. Se uma data for passada sem informações de fuso horário, supõe-se que seja UTC. Especifique esse cabeçalho para executar a operação somente se o recurso não tiver sido modificado desde a data/hora especificada.

etag
str

Um valor de ETag ou o caractere curinga (*). Usado para marcar se o recurso foi alterado e agir de acordo com a condição especificada pelo parâmetro match_condition.

match_condition
MatchConditions

A condição de correspondência a ser usada na etag.

timeout
int

Define o tempo limite do lado do servidor para a operação em segundos. Para obter mais informações, confira https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Esse valor não é rastreado ou validado no cliente. Para configurar tempos limite de rede do lado do cliente, confira aqui.

Retornos

DataLakeFileClient

Exemplos

Criar arquivo no sistema de arquivos.


   file_client = file_system_client.create_file("myfile")

create_file_system

Cria um novo sistema de arquivos na conta especificada.

Se o sistema de arquivos com o mesmo nome já existir, um ResourceExistsError será gerado. Esse método retorna um cliente com o qual interagir com o sistema de arquivos recém-criado.

create_file_system(metadata: Dict[str, str] | None = None, public_access: PublicAccess | None = None, **kwargs) -> Dict[str, str | datetime]

Parâmetros

metadata
dict(str, str)
Obrigatório

Um ditado com pares nome-valor a serem associados ao sistema de arquivos como metadados. Exemplo: {'Category':'test'}

public_access
PublicAccess
Obrigatório

Para especificar se os dados no sistema de arquivos podem ser acessados publicamente e o nível de acesso.

encryption_scope_options
dict ou EncryptionScopeOptions

Especifica o escopo de criptografia padrão a ser definido no sistema de arquivos e usado para todas as gravações futuras.

Novo na versão 12.9.0.

timeout
int

Define o tempo limite do lado do servidor para a operação em segundos. Para obter mais informações, confira https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Esse valor não é rastreado ou validado no cliente. Para configurar tempos limite de rede do lado do cliente, confira aqui.

Retornos

Um dicionário de cabeçalhos de resposta.

Tipo de retorno

Exemplos

Criando um sistema de arquivos no serviço datalake.


   file_system_client.create_file_system()

delete_directory

Marca o caminho especificado para exclusão.

delete_directory(directory: DirectoryProperties | str, **kwargs) -> DataLakeDirectoryClient

Parâmetros

directory
str ou DirectoryProperties
Obrigatório

O diretório com o qual interagir. Isso pode ser o nome do diretório ou uma instância de DirectoryProperties.

lease
DataLakeLeaseClient ou str

Obrigatório se o arquivo tiver uma concessão ativa. O valor pode ser um objeto LeaseClient ou a ID de concessão como uma cadeia de caracteres.

if_modified_since
datetime

Um valor Datetime. O Azure espera que o valor de data passado seja UTC. Se o fuso horário estiver incluído, todos os datetimes não UTC serão convertidos em UTC. Se uma data for passada sem informações de fuso horário, supõe-se que seja UTC. Especifique esse cabeçalho para executar a operação somente se o recurso tiver sido modificado desde a hora especificada.

if_unmodified_since
datetime

Um valor Datetime. O Azure espera que o valor de data passado seja UTC. Se o fuso horário estiver incluído, todos os datetimes não UTC serão convertidos em UTC. Se uma data for passada sem informações de fuso horário, supõe-se que seja UTC. Especifique esse cabeçalho para executar a operação somente se o recurso não tiver sido modificado desde a data/hora especificada.

etag
str

Um valor de ETag ou o caractere curinga (*). Usado para marcar se o recurso foi alterado e agir de acordo com a condição especificada pelo parâmetro match_condition.

match_condition
MatchConditions

A condição de correspondência a ser usada na etag.

timeout
int

Define o tempo limite do lado do servidor para a operação em segundos. Para obter mais informações, confira https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Esse valor não é rastreado ou validado no cliente. Para configurar tempos limite de rede do lado do cliente, confira aqui.

Retornos

DataLakeDirectoryClient

Exemplos

Exclua o diretório no sistema de arquivos.


   file_system_client.delete_directory("mydirectory")

delete_file

Marca o arquivo especificado para exclusão.

delete_file(file: FileProperties | str, **kwargs) -> DataLakeFileClient

Parâmetros

file
str ou FileProperties
Obrigatório

O arquivo com o qual interagir. Pode ser o nome do arquivo ou uma instância de FileProperties.

lease
DataLakeLeaseClient ou str

Obrigatório se o arquivo tiver uma concessão ativa. O valor pode ser um objeto LeaseClient ou a ID de concessão como uma cadeia de caracteres.

if_modified_since
datetime

Um valor Datetime. O Azure espera que o valor de data passado seja UTC. Se o fuso horário for incluído, todos os datetimes não UTC serão convertidos em UTC. Se uma data for passada sem informações de fuso horário, será considerado UTC. Especifique esse cabeçalho para executar a operação somente se o recurso tiver sido modificado desde a hora especificada.

if_unmodified_since
datetime

Um valor Datetime. O Azure espera que o valor de data passado seja UTC. Se o fuso horário for incluído, todos os datetimes não UTC serão convertidos em UTC. Se uma data for passada sem informações de fuso horário, será considerado UTC. Especifique esse cabeçalho para executar a operação somente se o recurso não tiver sido modificado desde a data/hora especificada.

etag
str

Um valor de ETag ou o caractere curinga (*). Usado para marcar se o recurso foi alterado e agir de acordo com a condição especificada pelo parâmetro match_condition.

match_condition
MatchConditions

A condição de correspondência a ser usada na etag.

timeout
int

Define o tempo limite do lado do servidor para a operação em segundos. Para obter mais informações, confira https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Esse valor não é rastreado ou validado no cliente. Para configurar tempos limite de rede do lado do cliente, consulte aqui.

Retornos

DataLakeFileClient

Exemplos

Excluir arquivo no sistema de arquivos.


   file_system_client.delete_file("myfile")

delete_file_system

Marca o sistema de arquivos especificado para exclusão.

O sistema de arquivos e todos os arquivos contidos nele serão excluídos posteriormente durante a coleta de lixo. Se o sistema de arquivos não for encontrado, um ResourceNotFoundError será gerado.

delete_file_system(**kwargs: Any) -> None

Parâmetros

lease
str ou DataLakeLeaseClient

Se especificado, delete_file_system só terá êxito se a concessão do sistema de arquivos estiver ativa e corresponder a essa ID. Obrigatório se o sistema de arquivos tiver uma concessão ativa.

if_modified_since
datetime

Um valor Datetime. O Azure espera que o valor de data passado seja UTC. Se o fuso horário for incluído, todos os datetimes não UTC serão convertidos em UTC. Se uma data for passada sem informações de fuso horário, será considerado UTC. Especifique esse cabeçalho para executar a operação somente se o recurso tiver sido modificado desde a hora especificada.

if_unmodified_since
datetime

Um valor Datetime. O Azure espera que o valor de data passado seja UTC. Se o fuso horário for incluído, todos os datetimes não UTC serão convertidos em UTC. Se uma data for passada sem informações de fuso horário, será considerado UTC. Especifique esse cabeçalho para executar a operação somente se o recurso não tiver sido modificado desde a data/hora especificada.

etag
str

Um valor de ETag ou o caractere curinga (*). Usado para marcar se o recurso foi alterado e agir de acordo com a condição especificada pelo parâmetro match_condition.

match_condition
MatchConditions

A condição de correspondência a ser usada na etag.

timeout
int

Define o tempo limite do lado do servidor para a operação em segundos. Para obter mais informações, confira https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Esse valor não é rastreado ou validado no cliente. Para configurar tempos limite de rede do lado do cliente, consulte aqui.

Tipo de retorno

Exemplos

Excluindo um sistema de arquivos no serviço datalake.


   file_system_client.delete_file_system()

exists

Retornará True se houver um sistema de arquivos e retornará False caso contrário.

exists(**kwargs: Any) -> bool

Parâmetros

timeout
int

Define o tempo limite do lado do servidor para a operação em segundos. Para obter mais informações, confira https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Esse valor não é rastreado ou validado no cliente. Para configurar tempos limite de rede do lado do cliente, consulte aqui.

Retornos

True se existir um sistema de arquivos; caso contrário, False.

Tipo de retorno

from_connection_string

Crie FileSystemClient a partir de uma cadeia de conexão.

:return a FileSystemClient :rtype ~azure.storage.filedatalake.FileSystemClient

from_connection_string(conn_str: str, file_system_name: str, credential: str | Dict[str, str] | AzureNamedKeyCredential | AzureSasCredential | TokenCredential | None = None, **kwargs: Any) -> Self

Parâmetros

conn_str
str
Obrigatório

Uma cadeia de conexão para uma conta de Armazenamento do Azure.

file_system_name
str
Obrigatório

O nome do sistema de arquivos com o qual interagir.

credential
valor padrão: None

As credenciais com as quais autenticar. Isso é opcional se a URL da conta já tiver um token SAS ou se a cadeia de conexão já tiver valores de chave de acesso compartilhados. O valor pode ser uma cadeia de caracteres de token SAS, uma instância de um AzureSasCredential ou AzureNamedKeyCredential de azure.core.credentials, uma chave de acesso compartilhado de conta ou uma instância de uma classe TokenCredentials de azure.identity. As credenciais fornecidas aqui terão precedência sobre aquelas na cadeia de conexão. Se estiver usando uma instância de AzureNamedKeyCredential, "name" deverá ser o nome da conta de armazenamento e "key" deverá ser a chave da conta de armazenamento.

Exemplos

Criar FileSystemClient a partir da cadeia de conexão


   from azure.storage.filedatalake import FileSystemClient
   file_system_client = FileSystemClient.from_connection_string(self.connection_string, "filesystem")

get_directory_client

Faça com que um cliente interaja com o diretório especificado.

O diretório ainda não precisa existir.

get_directory_client(directory: DirectoryProperties | str) -> DataLakeDirectoryClient

Parâmetros

directory
str ou DirectoryProperties
Obrigatório

O diretório com o qual interagir. Pode ser o nome do diretório ou uma instância de DirectoryProperties.

Retornos

Um DataLakeDirectoryClient.

Tipo de retorno

Exemplos

Fazer com que o cliente de diretório interaja com um diretório específico.


   # Get the DataLakeDirectoryClient from the FileSystemClient to interact with a specific file
   directory_client = file_system_client.get_directory_client("mynewdirectory")

get_file_client

Faça com que um cliente interaja com o arquivo especificado.

O arquivo ainda não precisa existir.

get_file_client(file_path: FileProperties | str) -> DataLakeFileClient

Parâmetros

file_path
str ou FileProperties
Obrigatório

O arquivo com o qual interagir. Esse pode ser o caminho do arquivo (do diretório raiz) ou uma instância de FileProperties. Eg. directory/subdirectory/file

Retornos

Um DataLakeFileClient.

Tipo de retorno

Exemplos

Fazer com que o cliente do arquivo interaja com um arquivo específico.


   # Get the FileClient from the FileSystemClient to interact with a specific file
   file_client = file_system_client.get_file_client("mynewfile")

get_file_system_access_policy

Obtém as permissões para o sistema de arquivos especificado. As permissões indicam se os dados do sistema de arquivos podem ser acessados publicamente.

get_file_system_access_policy(**kwargs: Any) -> Dict[str, Any]

Parâmetros

lease
DataLakeLeaseClient ou str

Se especificada, a operação só terá êxito se a concessão do sistema de arquivos estiver ativa e corresponder a essa ID.

timeout
int

Define o tempo limite do lado do servidor para a operação em segundos. Para obter mais informações, confira https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Esse valor não é rastreado ou validado no cliente. Para configurar tempos limite de rede do lado do cliente, consulte aqui.

Retornos

Informações de política de acesso em um dict.

Tipo de retorno

get_file_system_properties

Retorna todos os metadados definidos pelo usuário e as propriedades do sistema para o sistema de arquivos especificado. Os dados retornados não incluem a lista de caminhos do sistema de arquivos.

get_file_system_properties(**kwargs: Any) -> FileSystemProperties

Parâmetros

lease
str ou DataLakeLeaseClient

Se especificado, get_file_system_properties só terá êxito se a concessão do sistema de arquivos estiver ativa e corresponder a essa ID.

timeout
int

Define o tempo limite do lado do servidor para a operação em segundos. Para obter mais informações, confira https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Esse valor não é rastreado ou validado no cliente. Para configurar tempos limite de rede do lado do cliente, consulte aqui.

Retornos

Propriedades para o sistema de arquivos especificado em um objeto do sistema de arquivos.

Tipo de retorno

Exemplos

Obtendo propriedades no sistema de arquivos.


   properties = file_system_client.get_file_system_properties()

get_paths

Retorna um gerador para listar os caminhos (podem ser arquivos ou diretórios) no sistema de arquivos especificado. O gerador seguirá lentamente os tokens de continuação retornados pelo serviço.

get_paths(path: str | None = None, recursive: bool | None = True, max_results: int | None = None, **kwargs) -> ItemPaged[PathProperties]

Parâmetros

path
str
Obrigatório

Filtra os resultados para retornar apenas caminhos no caminho especificado.

recursive
Optional[bool]
Obrigatório

Opcional. Defina True para recursivo, False para iterativo.

max_results
int
Obrigatório

Um valor opcional que especifica o número máximo de itens a serem retornados por página. Se for omitido ou maior que 5.000, a resposta incluirá até 5.000 itens por página.

upn

Opcional. Válido somente quando o Namespace Hierárquico está habilitado para a conta. Se "true", os valores de identidade do usuário retornados nos cabeçalhos de resposta x-ms-owner, x-ms-group e x-ms-acl serão transformados de IDs de objeto do Azure Active Directory para nomes principais de usuário. Se "false", os valores serão retornados como IDs de objeto do Azure Active Directory. O valor padrão é false. Observe que as IDs de objeto de grupo e aplicativo não são traduzidas porque não têm nomes amigáveis exclusivos.

timeout
int

Define o tempo limite do lado do servidor para a operação em segundos. Para obter mais informações, confira https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Esse valor não é rastreado ou validado no cliente. Para configurar tempos limite de rede do lado do cliente, consulte aqui.

Retornos

Uma resposta iterável (paginação automática) de PathProperties.

Tipo de retorno

Exemplos

Liste os caminhos no sistema de arquivos.


   path_list = file_system_client.get_paths()
   for path in path_list:
       print(path.name + '\n')

list_deleted_paths

Retorna um gerador para listar os caminhos excluídos (arquivo ou diretório) no sistema de arquivos especificado. O gerador seguirá lentamente os tokens de continuação retornados pelo serviço.

Novidades na versão 12.4.0: essa operação foi introduzida na versão de API '2020-06-12'.

list_deleted_paths(**kwargs: Any) -> ItemPaged[DeletedPathProperties]

Parâmetros

path_prefix
str

Filtra os resultados para retornar apenas caminhos no caminho especificado.

results_per_page
int

Um valor opcional que especifica o número máximo de itens a serem retornados por página. Se for omitido ou maior que 5.000, a resposta incluirá até 5.000 itens por página.

timeout
int

Define o tempo limite do lado do servidor para a operação em segundos. Para obter mais informações, confira https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Esse valor não é rastreado ou validado no cliente. Para configurar tempos limite de rede do lado do cliente, consulte aqui.

Retornos

Uma resposta iterável (paginação automática) de DeletedPathProperties.

Tipo de retorno

set_file_system_access_policy

Define as permissões para o sistema de arquivos especificado ou políticas de acesso armazenadas que podem ser usadas com Assinaturas de Acesso Compartilhado. As permissões indicam se os arquivos em um sistema de arquivos podem ser acessados publicamente.

set_file_system_access_policy(signed_identifiers: Dict[str, AccessPolicy], public_access: str | PublicAccess | None = None, **kwargs) -> Dict[str, str | datetime]

Parâmetros

signed_identifiers
dict[str, AccessPolicy]
Obrigatório

Um dicionário de políticas de acesso a serem associadas ao sistema de arquivos. O dicionário pode conter até 5 elementos. Um dicionário vazio limpará as políticas de acesso definidas no serviço.

public_access
PublicAccess
Obrigatório

Para especificar se os dados no sistema de arquivos podem ser acessados publicamente e o nível de acesso.

lease
DataLakeLeaseClient ou str

Obrigatório se o sistema de arquivos tiver uma concessão ativa. O valor pode ser um objeto DataLakeLeaseClient ou a ID de concessão como uma cadeia de caracteres.

if_modified_since
datetime

Um valor datetime. O Azure espera que o valor de data passado seja UTC. Se o fuso horário for incluído, todos os datetimes não UTC serão convertidos em UTC. Se uma data for passada sem informações de fuso horário, será considerado UTC. Especifique esse cabeçalho para executar a operação somente se o recurso tiver sido modificado desde a data/hora especificada.

if_unmodified_since
datetime

Um valor datetime. O Azure espera que o valor de data passado seja UTC. Se o fuso horário for incluído, todos os datetimes não UTC serão convertidos em UTC. Se uma data for passada sem informações de fuso horário, será considerado UTC. Especifique esse cabeçalho para executar a operação somente se o recurso não tiver sido modificado desde a data/hora especificada.

timeout
int

Define o tempo limite do lado do servidor para a operação em segundos. Para obter mais informações, confira https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Esse valor não é rastreado ou validado no cliente. Para configurar tempos limite de rede do lado do cliente, consulte aqui.

Retornos

Dict de propriedade atualizado pelo sistema de arquivos (Etag e última modificação).

Tipo de retorno

set_file_system_metadata

Define um ou mais pares nome-valor definidos pelo usuário para o sistema de arquivos especificado. Cada chamada para essa operação substitui todos os metadados existentes anexados ao sistema de arquivos. Para remover todos os metadados do sistema de arquivos, chame essa operação sem um dict de metadados.

set_file_system_metadata(metadata: Dict[str, str], **kwargs) -> Dict[str, str | datetime]

Parâmetros

metadata
dict[str, str]
Obrigatório

Um ditado que contém pares nome-valor a serem associados ao sistema de arquivos como metadados. Exemplo: {'category':'test'}

lease
str ou DataLakeLeaseClient

Se especificado, set_file_system_metadata só terá êxito se a concessão do sistema de arquivos estiver ativa e corresponder a essa ID.

if_modified_since
datetime

Um valor Datetime. O Azure espera que o valor de data passado seja UTC. Se o fuso horário for incluído, todos os datetimes não UTC serão convertidos em UTC. Se uma data for passada sem informações de fuso horário, será considerado UTC. Especifique esse cabeçalho para executar a operação somente se o recurso tiver sido modificado desde a hora especificada.

if_unmodified_since
datetime

Um valor Datetime. O Azure espera que o valor de data passado seja UTC. Se o fuso horário for incluído, todos os datetimes não UTC serão convertidos em UTC. Se uma data for passada sem informações de fuso horário, será considerado UTC. Especifique esse cabeçalho para executar a operação somente se o recurso não tiver sido modificado desde a data/hora especificada.

etag
str

Um valor de ETag ou o caractere curinga (*). Usado para marcar se o recurso foi alterado e agir de acordo com a condição especificada pelo parâmetro match_condition.

match_condition
MatchConditions

A condição de correspondência a ser usada na etag.

timeout
int

Define o tempo limite do lado do servidor para a operação em segundos. Para obter mais informações, confira https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Esse valor não é rastreado ou validado no cliente. Para configurar tempos limite de rede do lado do cliente, consulte aqui.

Retornos

filesystem-updated property dict (Etag e last modified).

Tipo de retorno

Exemplos

Definindo metadados no sistema de arquivos.


   # Create key, value pairs for metadata
   metadata = {'type': 'test'}

   # Set metadata on the file system
   file_system_client.set_file_system_metadata(metadata=metadata)

Atributos

api_version

A versão da API de Armazenamento usada para solicitações.

location_mode

O modo de localização que o cliente está usando no momento.

Por padrão, isso será "primário". As opções incluem "primário" e "secundário".

primary_endpoint

A URL completa do ponto de extremidade primário.

primary_hostname

O nome do host do ponto de extremidade primário.

secondary_endpoint

A URL completa do ponto de extremidade secundário, se configurada.

Se não estiver disponível, um ValueError será gerado. Para especificar explicitamente um nome de host secundário, use o argumento opcional secondary_hostname palavra-chave na instanciação.

Exceções

secondary_hostname

O nome do host do ponto de extremidade secundário.

Se não estiver disponível, será Nenhum. Para especificar explicitamente um nome de host secundário, use o argumento opcional secondary_hostname palavra-chave na instanciação.

url

A URL completa do ponto de extremidade para essa entidade, incluindo o token SAS, se usado.

Isso pode ser o ponto de extremidade primário ou o ponto de extremidade secundário, dependendo do atual location_mode. :returns: a URL completa do ponto de extremidade para essa entidade, incluindo o token SAS, se usado. :rtype: str