Windows Batch File Rename to Replace %20 Characters with _
I have a folder with a lot of files that I need to rename. The original format for example is
ABC%20DEF%20GHI%20JKL.xyz
. What I need to do is to replace each%20
with_
. So essentially I'm parsing out the %20 characters from the file names and then replacing those with an underscore_
character.Ideally I'd like to be able to complete this with a script rather than an application.
Aviso: Se você estiver perguntando onde começar a aprender como fazer isso com o comando batch e rename, essa pergunta será marcada como off-line tópico mais do que provável (consulte a resposta do Techie007 nos comentários abaixo da minha resposta).
Abaixo está um exemplo de script em lote que substitui todos os caracteres %20
dos nomes de arquivos e os substitui por todos os caracteres underbar \ underscore _
. Então você pode dar uma olhada e ver se isso lhe dá alguns pontos de partida também. Isso completará a tarefa que você está tentando realizar de outra forma, de acordo com sua pergunta, e qualquer uma das duas maneiras que podem ser interpretadas sem maiores esclarecimentos.
Vou postar alguns recursos para aprendizado abaixo do script em lote, e isso será adicional aprendizado
Exemplo de script em lote para analisar %20
e substituir por e underbar _
com lote para arquivos em um diretório específico. @ECHO ON
SETLOCAL DISABLEDELAYEDEXPANSION
SET rendir=C:\Path\FolderPath\WithFilesToRename
FOR /F "USEBACKQ DELIMS=" %%N IN (
'DIR /A-D /B "%rendir%"'
) DO (
SET "Var=%%~NXN"
SETLOCAL ENABLEDELAYEDEXPANSION
SET "Orig=!Var!"
SET "Var=!Var:%%20=_!"
IF NOT "!Var!"=="!Orig!" (
IF NOT EXIST "%%~DPN!Var!" (
REN "%rendir%\!Orig!" "!Var!"
) ELSE (
GOTO EOF
)
)
ENDLOCAL
)
Leitura adicional e recursos