Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import os
- import shutil
- # Obter o diretório atual onde o script está
- diretorio_atual = os.path.dirname(os.path.abspath(__file__))
- # Extensões a serem ignoradas
- extensoes_ignoradas = ['.py', '.exe']
- # Pastas a serem ignoradas (inicialmente vazia, vamos alimentar ela ao longo do script)
- pastas_ja_existentes_com_conteudo = []
- # Verifica as pastas existentes com arquivos dentro
- for item in os.listdir(diretorio_atual):
- caminho = os.path.join(diretorio_atual, item)
- if os.path.isdir(caminho):
- if os.listdir(caminho): # se a pasta tem arquivos
- pastas_ja_existentes_com_conteudo.append(item.lower())
- # Percorrer os arquivos do diretório atual
- for item in os.listdir(diretorio_atual):
- caminho_completo = os.path.join(diretorio_atual, item)
- if os.path.isfile(caminho_completo):
- nome_arquivo, extensao = os.path.splitext(item)
- if extensao and extensao.lower() not in extensoes_ignoradas:
- nome_pasta = extensao[1:].lower() # remove o ponto da extensão
- # Se a pasta de destino já existe e tem conteúdo, ignorar
- if nome_pasta in pastas_ja_existentes_com_conteudo:
- print(f"Ignorado: {item} → Pasta '{nome_pasta}' já existe com conteúdo.")
- continue
- pasta_destino = os.path.join(diretorio_atual, nome_pasta)
- # Cria a pasta se ela não existir
- if not os.path.exists(pasta_destino):
- os.makedirs(pasta_destino)
- # Move o arquivo
- novo_caminho = os.path.join(pasta_destino, item)
- try:
- shutil.move(caminho_completo, novo_caminho)
- print(f"Movido: {item} → {pasta_destino}/")
- except Exception as e:
- print(f"Erro ao mover {item}: {e}")
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement