标题: 批量更改文件名
[打印本页]
作者: lcgroger
时间: 2007-7-5 14:00
标题: 批量更改文件名
我想批量更改所有的.mp3文件如何改啊?
文件名是没有规律的,但我想把它们都改成有规律性的
如:把 alsdkfj12.mp3, uoqor.mp3, .... oqwue.mp3
改成为 lcgroger001.mp3, lcgroger002.mp3, .... lcgroger999.mp3
请高手指点!
作者: ccwan
时间: 2007-7-5 14:33
@echo off&setlocal enabledelayedexpansion
cd.>1.txt
dir/b *.mp3>>1.txt
for /f "tokens=1* delims=:" %%i in ('findstr /n .* 1.txt') do (
set var=00%%i
set var=!var:~-3!
echo ren %%j lcgroger!var!.mp3
)
pause
试运行一下,没有问题的话,将 echo ren %%j lcgroger!var!.mp3 中的echo去掉就可以了。
作者: p1509101
时间: 2007-7-5 17:04
我试了下 说命令错误
作者: ccwan
时间: 2007-7-5 17:11
加上双引号,防止文件名中有空格时出错。
@echo on&setlocal enabledelayedexpansion
cd.>1.txt
dir/b *.mp3>>1.txt
for /f "tokens=1* delims=:" %%i in ('findstr /n .* 1.txt') do (
set var=00%%i
set var=!var:~-3!
ren "%%j" lcgroger!var!.mp3
)
pause
[
Last edited by ccwan on 2007-7-5 at 05:18 PM ]
作者: zxlxsqzy
时间: 2007-7-5 17:30
@echo on&setlocal enabledelayedexpansion
cd.>1.txt
dir/b *.mp3>>1.txt
for /f "tokens=1* delims=:" %%i in ('findstr /n .* 1.txt') do (
set var=00%%i
set var=!var:~-3!
ren "%%j" lcgroger
!var!.mp3
)
pause
我想请问一下,这里为什么用!var!
作者: ccwan
时间: 2007-7-5 18:17
re zxlxsqzy
兄可以搜索一下“变量延迟”,看一下批处理达人是如何解释的。
作者: htun
时间: 2007-7-6 12:50
把全部mp3选中 然后在第一个上右键 选择重命名 改为cgroger.mp3 其它的就自动改好了cgroger001.mp3 cgroger002.mp3.........
作者: ccwan
时间: 2007-7-6 13:40
re htun
好像兄的方法命名的文件名是(1) (2)(3)...的形式,不是001 002 003...