Confrontos de nomes
A primeira pergunta que você precisa se perguntar é se há uma chance de confrontos conhecidos. Em outras palavras; se houver uma versão oculta do mesmo diretório ou arquivo em um único diretório.
De baixo para cima
Assumindo que não é o caso, essa é uma das situações que você precisa renomear de baixo para cima , já que você não pode renomear (mover) arquivos dentro de pastas que acabaram de ser renomeadas; o script não os encontrará mais e quebrará.
Tornando os arquivos ocultos visíveis
Além disso, enquanto escrevia esta resposta, um comentário do @Rinzwind apareceu acima da minha cabeça, mencionando que pressionar Ctrl + H tornará todos os arquivos e pastas ocultos visíveis, o que é verdade, claro.
Se, no entanto, você quiser renomear os arquivos e pastas:
Um script para fazer isso
#!/usr/bin/env python3
import os
import sys
import shutil
directory = sys.argv[1]
for root, dirs, files in os.walk(directory, topdown=False):
for f in files:
if f.startswith("."):
shutil.move(os.path.join(root, f), os.path.join(root, f[1:]))
for dr in dirs:
if dr.startswith("."):
shutil.move(os.path.join(root, dr), os.path.join(root, dr[1:]))
Como usar
- Copie o script em um arquivo vazio, salve-o como
rename_dotted.py
-
Abra um terminal e digite o comando:
python3 /path/to/rename_dotted.py '<directory>'
onde
'<directory>'
é o diretório, precisa estar entre aspas se incluir um ou mais espaços.Como sempre, tente primeiro uma amostra.