如何在 Windows 中批量删除数千个文件中的空格(而不是替换为下划线)?我可以从 DOS 命令执行此操作吗?
目前:
file one.mp3
file two.mp3
所有文件需要变成:
fileone.mp3
filetwo.mp3
最佳答案
这是一个脚本,可以有效地批量重命名文件,从名称中删除所有空格。
:renameNoSpace [/R] [FolderPath]
@echo off
setlocal disableDelayedExpansion
if /i "%~1"=="/R" (
set "forOption=%~1 %2"
set "inPath="
) else (
set "forOption="
if "%~1" neq "" (set "inPath=%~1\") else set "inPath="
)
for %forOption% %%F in ("%inPath%* *") do (
if /i "%~f0" neq "%%~fF" (
set "folder=%%~dpF"
set "file=%%~nxF"
setlocal enableDelayedExpansion
echo ren "!folder!!file!" "!file: =!"
ren "!folder!!file!" "!file: =!"
endlocal
)
)
假设脚本名为renameNoSpace.bat
renameNoSpace
:(无参数)重命名当前目录中的文件
renameNoSpace/R
: 重命名以当前目录为根的文件夹树中的文件
renameNoSpace myFolder
:重命名当前目录中“myFolder”目录中的文件。
renameNoSpace "c:\my folder\"
:重命名指定路径中的文件。使用引号是因为路径包含空格。
renameNoSpace/R c:\
: 重命名 C: 驱动器上的所有文件。
关于windows - 如何从文件名中删除空格(批量),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11270453/