Pular para o conteúdo
Skillpedia
APIs e servidores (backend)48 mil · #2383

azure-storage-file-share-py

Ajuda seu agente a usar compartilhamentos de arquivos do Azure com Python. Ele permite gerenciar arquivos e pastas na nuvem como se fossem locais.

O que ela faz

Esta ferramenta permite que você gerencie arquivos e pastas na nuvem, como se estivesse usando o explorador de arquivos do seu computador. Você pode criar, listar, apagar e mover arquivos e pastas em um espaço de armazenamento online.

Quando usar

  • ✓Quando você precisa guardar ou acessar arquivos importantes de qualquer lugar.
  • ✓Ao organizar muitos arquivos e pastas na nuvem.
  • ✓Para compartilhar arquivos com outras pessoas de forma controlada.

Exemplo do que pedir para a IA

“Crie uma pasta chamada 'documentos' e dentro dela, um arquivo chamado 'relatorio.txt' com o texto 'Este é o relatório anual'.”

Quer saber mais? Abra as seções abaixo.

Como usar

O jeito mais fácil: copie a mensagem abaixo e cole no Claude, ChatGPT, Cursor ou outra IA. Ela lê a skill e segue as instruções.

Link da skill

https://github.com/sickn33/agentic-awesome-skills/blob/main/plugins/agentic-awesome-skills-claude/skills/azure-storage-file-share-py/SKILL.md

Mensagem pronta para colar

Use esta skill para me ajudar: https://github.com/sickn33/agentic-awesome-skills/blob/main/plugins/agentic-awesome-skills-claude/skills/azure-storage-file-share-py/SKILL.md Leia o arquivo SKILL.md desse link e siga as instruções dele na minha tarefa.
Como funciona

Você conecta seu programa ao serviço de armazenamento na nuvem usando uma chave de acesso. Depois, pode usar comandos simples para criar pastas, subir arquivos, baixar arquivos e ver o que já está guardado lá.

Instalação

Jeito mais fácil: copie o link da skill e cole no Claude, ChatGPT ou Cursor pedindo para seguir as instruções.

No terminal (Claude Code, Codex, Cursor), na pasta do projeto:

npx skills add sickn33/agentic-awesome-skills --skill azure-storage-file-share-py

Ou baixe só o arquivo:

curl -L https://raw.githubusercontent.com/sickn33/agentic-awesome-skills/main/plugins/agentic-awesome-skills-claude/skills/azure-storage-file-share-py/SKILL.md -o SKILL.md
Conteúdo técnico (SKILL.md)

Tradução do texto original do autor no GitHub. Os comandos e códigos estão como no original.

SDK do Azure Storage File Share para Python

Gerencie compartilhamentos de arquivos SMB para cenários nativos da nuvem e de "lift-and-shift".

Instalação

pip install azure-storage-file-share

Variáveis de Ambiente

AZURE_STORAGE_CONNECTION_STRING=DefaultEndpointsProtocol=https;AccountName=...;AccountKey=...
# Or
AZURE_STORAGE_ACCOUNT_URL=https://<account>.file.core.windows.net

Autenticação

String de Conexão

from azure.storage.fileshare import ShareServiceClient

service = ShareServiceClient.from_connection_string(
    os.environ["AZURE_STORAGE_CONNECTION_STRING"]
)

Entra ID

from azure.storage.fileshare import ShareServiceClient
from azure.identity import DefaultAzureCredential

service = ShareServiceClient(
    account_url=os.environ["AZURE_STORAGE_ACCOUNT_URL"],
    credential=DefaultAzureCredential()
)

Operações de Compartilhamento

Criar Compartilhamento

share = service.create_share("my-share")

Listar Compartilhamentos

for share in service.list_shares():
    print(f"{share.name}: {share.quota} GB")

Obter Cliente de Compartilhamento

share_client = service.get_share_client("my-share")

Excluir Compartilhamento

service.delete_share("my-share")

Operações de Diretório

Criar Diretório

share_client = service.get_share_client("my-share")
share_client.create_directory("my-directory")

# Nested directory
share_client.create_directory("my-directory/sub-directory")

Listar Diretórios e Arquivos

directory_client = share_client.get_directory_client("my-directory")

for item in directory_client.list_directories_and_files():
    if item["is_directory"]:
        print(f"[DIR] {item['name']}")
    else:
        print(f"[FILE] {item['name']} ({item['size']} bytes)")

Excluir Diretório

share_client.delete_directory("my-directory")

Operações de Arquivo

Fazer Upload de Arquivo

file_client = share_client.get_file_client("my-directory/file.txt")

# From string
file_client.upload_file("Hello, World!")

# From file
with open("local-file.txt", "rb") as f:
    file_client.upload_file(f)

# From bytes
file_client.upload_file(b"Binary content")

Baixar Arquivo

file_client = share_client.get_file_client("my-directory/file.txt")

# To bytes
data = file_client.download_file().readall()

# To file
with open("downloaded.txt", "wb") as f:
    data = file_client.download_file()
    data.readinto(f)

# Stream chunks
download = file_client.download_file()
for chunk in download.chunks():
    process(chunk)

Obter Propriedades do Arquivo

properties = file_client.get_file_properties()
print(f"Size: {properties.size}")
print(f"Content type: {properties.content_settings.content_type}")
print(f"Last modified: {properties.last_modified}")

Excluir Arquivo

file_client.delete_file()

Copiar Arquivo

source_url = "https://account.file.core.windows.net/share/source.txt"
dest_client = share_client.get_file_client("destination.txt")
dest_client.start_copy_from_url(source_url)

Operações de Intervalo

Fazer Upload de Intervalo

# Upload to specific range
file_client.upload_range(data=b"content", offset=0, length=7)

Baixar Intervalo

# Download specific range
download = file_client.download_file(offset=0, length=100)
data = download.readall()

Operações de Snapshot

Criar Snapshot

snapshot = share_client.create_snapshot()
print(f"Snapshot: {snapshot['snapshot']}")

Acessar Snapshot

snapshot_client = service.get_share_client(
    "my-share",
    snapshot=snapshot["snapshot"]
)

Cliente Assíncrono

from azure.storage.fileshare.aio import ShareServiceClient
from azure.identity.aio import DefaultAzureCredential

async def upload_file():
    credential = DefaultAzureCredential()
    service = ShareServiceClient(account_url, credential=credential)
    
    share = service.get_share_client("my-share")
    file_client = share.get_file_client("test.txt")
    
    await file_client.upload_file("Hello!")
    
    await service.close()
    await credential.close()

Tipos de Cliente

Cliente Propósito
ShareServiceClient Operações em nível de conta
ShareClient Operações de compartilhamento
ShareDirectoryClient Operações de diretório
ShareFileClient Operações de arquivo

Melhores Práticas

  1. Use a string de conexão para a configuração mais simples
  2. Use o Entra ID para produção com RBAC

…

Perguntas frequentes

Como eu me conecto ao armazenamento na nuvem?

Você pode se conectar usando uma 'connection string' (uma chave que contém todas as informações de acesso) ou usando o sistema de segurança Entra ID, que é mais recomendado para empresas.

Posso criar subpastas?

Sim, você pode criar pastas dentro de outras pastas, assim como faz no seu computador.

Como faço para salvar um arquivo grande sem travar meu programa?

Você pode enviar o arquivo em pedaços (chunks) em vez de tudo de uma vez. Isso evita que seu programa use muita memória.

Detalhes

Descrição original do autor

Azure Storage File Share SDK for Python. Use for SMB file shares, directories, and file operations in the cloud.

repo: sickn33/agentic-awesome-skills

Popularidade

Estrelas no GitHub
48 mil
Posição no ranking
#2383
Licença
MIT
Atualizada em
15/10/2026

Essa skill é útil?

0

Entre para votar.

Comentários

  • …

Mais skills deste repositório

Skills parecidas