如何用批处理命令删除一批文件中的空格字符.

如何用批处理命令删除一批文件中的空格字符.例如某个文件夹中我有很多个(* .MP3)文件可是这些文件名中都有空格,我不想要空格需要删除,请问怎么用批处理命令处理?

教你批量去除文件名中的空格字符:

第1步,下载工具软件后安装打开,然后点击【添加文件】将需要修改文件名的文件全部添加到软件中,支持所有格式的文件名修改。

第2步,接下来是最重要的设置环节,命名方式选择“替换”;然后查找内容中输入一个空格键(记住是一个);替换内容留空,什么都不用输入。这时候可以在右边新文件名列表中看到修改后的文件名称,已经将空格全部删除。

第3步,确认无误之后点击【开始重命名】按钮,启动软件程序。当软件弹出“重命名成功”的提示框,这时说明全部删除了文件名中的空格。

第4步,对比案例中的前后文件可以看出,原本含有空格的文件名全部变成没有空格的名称。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-12-08
@echo off&setlocal Enabledelayedexpansion
for /f "delims=" %%a in ('dir /b "*.mp3"') do (
set var=%%~na
if "!var:~-1!"==" " set var=!var:~0,-1!&ren "%%a" "!var!%%~xa"
)
echo.&echo ok&pause>nul

丢要改的文件夹下追问

不行还是不好使,不过我已经找到更好的代码了!
@echo off&setlocal enabledelayedexpansion
for /f "delims=" %%i in ('dir /s/b *.*') do (
set "foo=%%~nxi"
set foo=!foo: =!
set foo=!foo: =!
ren "%%~fi" "!foo!"
)
exit

来自:求助得到的回答
第1个回答  2012-12-08
@echo off
setlocal enabledelayedexpansion
pushd d:\mp3
for /f "tokens=*" %%i in ('dir/b/a-d *.mp3') do (
set fn=%%i
set fn=!fn: =!
ren "%%i" !fn!")追问

(⊙o⊙)…没反应呢!

追答

pushd d:\mp3
这个设成你的路径,如果批处理和mp3在同一文件夹,可把这行删除

追问

不行还是有问题!我已经找到能够实现功能的代码了!就像这样跟你的大致相同.
@echo off&setlocal enabledelayedexpansion
for /f "delims=" %%i in ('dir /s/b *.MP3') do (
set "foo=%%~nxi"
set foo=!foo: =!
set foo=!foo: =!
ren "%%~fi" "!foo!"
)
exit

追答

sorry ,这里最后那个引号删除即可。

ren "%%i" !fn!")

本回答被提问者和网友采纳