![Board logo](images/default/logo.gif)
标题: [文件操作] 批处理怎样对指定目录下的文件进行批量修改扩展名? [打印本页]
作者: xzwcn 时间: 2013-3-30 21:35 标题: 批处理怎样对指定目录下的文件进行批量修改扩展名?
如一个目录 中包含N个扩展名为BAT的文件,如果要批量修改为CMD扩展名的,应该怎样操作呢?- @echo off
- set /p Path=请输入名录入文件夹路径:
-
- ::类似这样的? ::for /l in () do ren %Path%\*.bat do ren *.cmd
复制代码
作者: BAT-VBS 时间: 2013-3-30 22:23
- @echo off
- set /p mypath=请输入文件夹完整路径:
- for %%a in (%mypath%\*.bat) do (
- ren "%%a" "%%~na.cmd"
- )
复制代码
作者: terse 时间: 2013-3-30 22:54
复制代码
作者: xzwcn 时间: 2013-4-6 11:46
回复 2# BAT-VBS
如果要对子目录下的文件也处理,要添加什么参数呢?
应用:如我想把一个U盘中的所有bat文件都修改为cmd的。
作者: CrLf 时间: 2013-4-6 12:59
本帖最后由 CrLf 于 2013-4-6 15:10 编辑
- cd /d U:\test\
- for /r /d %%a in (*) do ren "%%a\*.bat" *.cmd
复制代码
作者: xzwcn 时间: 2013-4-6 14:54
- @echo off
- set /p Path=请输入路径或拖入文件夹:
- set Path=%Path:"=%
- set /p OType=请输入要修改的类型:
- set /p Type=要修改为的类型:
- cd /d %Path%
- for /r /d %%a in (*) do ren *.%OType% *.%Type%
- start %Path%
- ping 127.1 -n 3
复制代码
回复 5# CrLf
为什么子目录下的修改不成功呢?
作者: CrLf 时间: 2013-4-6 15:10
回复 6# xzwcn
漏了路径,已修改
作者: xzwcn 时间: 2013-4-6 19:09
本帖最后由 xzwcn 于 2013-4-6 22:15 编辑
回复 7# CrLf
执行时为什么提示找不到指定文件呢?
文件存在于:
C:\Users\Administrator\Desktop\aa>tree /f
Folder PATH listing for volume win7
Volume serial number is 00000200 4C10:FB42
C:.
│ 123.bat
│
└─ff
dd.txt
执行结果:
请输入路径或拖入文件夹:C:\Users\Administrator\Desktop\aa
请输入要修改的类型:txt
要修改为的类型:bat
Press any key to continue . . .
The system cannot find the file specified.
Press any key to continue . . .- @echo off
- set /p Path=请输入路径或拖入文件夹:
- set Path=%Path:"=%
- set /p OType=请输入要修改的类型:
- set /p Type=要修改为的类型:
- cd /d %Path%
- pause
- for /r /d %%a in (*) do ren "%%a\*.%OType% *.%Type%"
- pause
- start %Path%
- pause
- ping 127.1 -n 3
复制代码
作者: CrLf 时间: 2013-4-6 19:24
回复 8# xzwcn
ren "%%a\*.%OType%" "*.%Type%"
欢迎光临 批处理之家 (http://bbs.bathome.net/) |
Powered by Discuz! 7.2 |