Board logo

标题: 请教:批处理改文件名"*.exe" 为 "*.ex". [打印本页]

作者: mf008     时间: 2007-1-14 09:38    标题: 请教:批处理改文件名"*.exe" 为 "*.ex".

:o
怎样使d:里所有的 exe为后缀名的文件改为ex后缀名的文件?

小生是菜,望各位大虾指教下.谢谢
作者: namejm     时间: 2007-1-14 10:02
  ren *.exe *.ex
作者: mf008     时间: 2007-1-14 10:09    标题: 没有回答完我的问题

我说的是D盘里所有的exe文件.包括子文件夹里的.
作者: dikex     时间: 2007-1-14 10:13
for /f "delims=" %%i in ('dir d:\*.exe /s /a /b') do ren "%%i" "%%~ni.ex"
作者: mf008     时间: 2007-1-14 10:32    标题: 谢谢.

谢谢.谢谢四楼.  同样谢谢二楼.
作者: beeny     时间: 2007-1-14 11:23
%%~ni
我刚在学DOS想问一下这 个是什么意思!就这句看不懂!
作者: Eblis     时间: 2007-1-14 11:29
将变量i扩展到文件名..
作者: ytfsse     时间: 2007-1-15 10:15
有这样的扩展名吗
作者: GOTOmsdos     时间: 2007-1-15 10:39
不到万不得已的时候,最好不要用delims和dir之类的截取屏幕输出,一来效率较低,二来也容易错,楼主的问题关键就是用 FOR /R 参数:
如下就可以了:(实际上delims和dir的使用是多余的)
C:>for /r d: %a in (*.exe) do if exist %a rename %a %~na.ex

[ Last edited by GOTOmsdos on 2007-1-15 at 10:54 AM ]
作者: 86763510     时间: 2007-3-25 06:56
9楼的朋友你的方法还是不行,我试过了
作者: step2step     时间: 2007-6-4 15:14


  Quote:
Originally posted by 86763510 at 2007-3-25 06:56 AM:
9楼的朋友你的方法还是不行,我试过了

我试过了,是可以的,如果在批处理下用要把%变成%%