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
Mensagem pronta para colar
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-pyOu 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.mdConteú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
- Use a string de conexão para a configuração mais simples
- 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.
Popularidade
- Estrelas no GitHub
- 48 mil
- Posição no ranking
- #2383
- Licença
- MIT
- Atualizada em
- 15/10/2026
Comentários
- …
Mais skills deste repositório
00-andruia-consultant
Ajuda seu agente a iniciar ou melhorar projetos de IA. Ele analisa código, sugere ferramentas e cria planos de ação em espanhol.
sickn33/agentic-awesome-skills
007
Faz seu agente realizar auditorias de segurança e modelagem de ameaças. É útil para proteger projetos contra ataques e vulnerabilidades.
sickn33/agentic-awesome-skills
10-andruia-skill-smith
Ajuda seu agente a criar ou melhorar ferramentas de IA. Ele define como as ferramentas funcionam, escreve a documentação e valida a estrutura.
sickn33/agentic-awesome-skills
20-andruia-niche-intelligence
Faz seu agente criar um resumo sobre um setor específico. É útil para entender o contexto, regras, padrões de uso e riscos de um projeto, usando fontes confiáveis.
sickn33/agentic-awesome-skills
Skills parecidas
api-connector-builder
Faz seu agente construir novas conexões com APIs seguindo o padrão já existente. Use quando precisar adicionar mais uma integração sem criar um novo jeito de fazer.
affaan-m/ECC
api-design
Ajuda seu agente a projetar APIs REST seguindo as melhores práticas. É útil para definir como as APIs se comunicam, como os erros são mostrados e como organizar os dados.
affaan-m/ECC
backend-patterns
Ajuda seu agente com padrões de arquitetura do lado do servidor e otimização de banco de dados. É útil para construir ou revisar o código que roda no servidor.
affaan-m/ECC