斑竹好,我是新手,想做一个给文件夹统一改名的bat,但遇到一些问题。
for /f %%i in ('dir /b') do (
set name=%%i
set newname=!name:01-01=01-02!
if not "!name!"=="!newname!" ren "!name!" "!newname!"
)
1.上面的程序可以统一改名,但此程序只能在当前文件下运行,就是说如果此程序在e:\1文件夹中,运行后可以把1文件夹中的所有以01-01命名的都改成01-02,但我想把程序放在桌面上运行,就不能改了,即使我指定了文件路径(for /f %%i in ('dir e:\1 /b') do ()。
2.如果此程序已在当前文件下,我想用一个新的批处理来调用这个程序,但起不到改名的效果.
3.如果我想每天都改名,01-02改成01-03,04,05,06......可以做成一个小的循环吗,我只会用if和goto语句,其他的可以做吗?
问题有点多,请高手相助.万分谢谢!
for /f %%i in ('dir /b') do (
set name=%%i
set newname=!name:01-01=01-02!
if not "!name!"=="!newname!" ren "!name!" "!newname!"
)
1.上面的程序可以统一改名,但此程序只能在当前文件下运行,就是说如果此程序在e:\1文件夹中,运行后可以把1文件夹中的所有以01-01命名的都改成01-02,但我想把程序放在桌面上运行,就不能改了,即使我指定了文件路径(for /f %%i in ('dir e:\1 /b') do ()。
2.如果此程序已在当前文件下,我想用一个新的批处理来调用这个程序,但起不到改名的效果.
3.如果我想每天都改名,01-02改成01-03,04,05,06......可以做成一个小的循环吗,我只会用if和goto语句,其他的可以做吗?
问题有点多,请高手相助.万分谢谢!
