标题: [文本处理] 批处理怎样批量修改文件名? [打印本页]
作者: tomato007 时间: 2011-7-21 22:35 标题: 批处理怎样批量修改文件名?
我想把一个文件夹所有文件名中含有“-”的,改成" - ", 也就是在“-”前后加各加一个空格,请问怎样写,才能达到这个目的。
例如: 把文件名为“陈百强-偏偏喜欢你.mp3” ,改成“陈百强 - 偏偏喜欢你.mp3“。
作者: mxxcgzxxx 时间: 2011-7-21 22:41
本帖最后由 mxxcgzxxx 于 2011-7-21 22:42 编辑
- @echo off
- setlocal enabledelayedexpansion
- for /f "delims=" %%1 in ('dir /b *.*') do (
- set "a=%%1"
- set b=!a:-= - !
- ren "!a!" "!b!"
- )
复制代码
保存为a.bat放在那个目录下运行,不要运行两次哦,不然空格越加越多
作者: CUer 时间: 2011-7-21 22:42
- @echo off
- for /f "delims=" %%a in ('dir /b *.mp3') do (
- set "oldname=%%a"
- setlocal enabledelayedexpansion
- set "newname=!oldname:-= - !"
- ren "%%a" "!newname!"
- endlocal
- )
复制代码
作者: tmplinshi 时间: 2011-7-21 22:51
本帖最后由 tmplinshi 于 2011-7-21 23:13 编辑
- dir /b *-* | pren -v "s/-/ - /g"
复制代码
pren 下载地址: http://bathome.net/thread-13342-1-1.html
作者: Batcher 时间: 2011-7-22 00:12
2# mxxcgzxxx
建议不要使用数字作为for循环的控制变量
作者: tomato007 时间: 2011-7-22 00:42
谢谢各位的指点。问题搞定了。
作者: mxxcgzxxx 时间: 2011-7-22 10:45
5# Batcher
哦,有什么缺点吗?主要是数字比字母好记顺序所以我爱数字呵, 是不是会和%1等冲突?
欢迎光临 批处理之家 (http://bbs.bathome.net/) |
Powered by Discuz! 7.2 |