通过bat或vbs切换扩展

时间:2012-10-07 09:39:38

标签: vbscript batch-file file-rename batch-rename

我需要快速切换特定文件夹中包含的所有文件的扩展名。

假设C:\My Folder\包含200个文件(全部为.txt)。

通过执行脚本我将它们全部更改为.xml

然后

通过执行相同脚本我将它们全部更改回.txt

换句话说,执行这一个脚本会无限期地将这200个文件(如果它们是.txt)转换为.xml和(如果它们是.xml)到.txt并循环...

对于一个批次我记得这样的事情(工作):

@echo off

IF EXIST "C:\My Folder\*.txt" GOTO RENAMETXT
IF NOT EXIST "C:\My Folder\*.txt" GOTO RENAMEXML

:RENAMETXT
ren "C:\My Folder\*.txt" "*.xml"

:RENAMEXML
ren "C:\My Folder\*.xml" "*.txt"

1 个答案:

答案 0 :(得分:2)

您建议的批处理脚本不起作用,因为:RENAMETXT部分属于:RENAMEXML。只需在EXIT /B之前插入:RENAMEXML即可解决此问题。

但是不需要GOTO或EXIT / B - 你可以简单地使用IF ... ELSE ......

@echo off
if exist "C:\My Folder\*.txt" (
  ren "C:\My Folder\*.txt" *.xml
) else (
  ren "C:\My Folder\*.xml" *.txt
)