我有一组文件的目录中的象下面这样:对于批处理编程循环
File-MyFile.txt File-AnotherFile.txt File-ThirdFile.txt
我要重命名的所有文件象下面这样:
MyFile.txt AnotherFile.txt ThirdFile.txt
如何使用一个for
循环要做到这一点?
我有一组文件的目录中的象下面这样:对于批处理编程循环
File-MyFile.txt File-AnotherFile.txt File-ThirdFile.txt
我要重命名的所有文件象下面这样:
MyFile.txt AnotherFile.txt ThirdFile.txt
如何使用一个for
循环要做到这一点?
克里斯显示做的最好办法。我认为这可能接近你所要求的,但我没有测试它:
@echo off
for /f %%a IN ('dir /b *.txt') do call :dorename %%a
goto :eof
:dorename
set oldfile=%1
set newfile=%oldfile:File-=%
rename %oldfile% %newfile%
你不需要一个循环:
rename File- "" File-*.txt
不适用于我。显示“命令的语法不正确。” – chanchal1987 2010-11-16 19:25:26
对不起,一定忽略了dos-batch标签。这是为了unix重命名。 – chris 2010-11-16 21:48:15
该命令也不起作用。 – chanchal1987 2010-11-16 19:34:12
好吧,仍然不完美,但它做你想做的事情。因人而异。 – clifgriffin 2010-11-16 19:50:29
'newfile =%oldfile:File - =%'也可以是'newfile =%oldfile:〜5%' – Sathya 2010-11-16 20:32:09