0

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

假设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"
4

1 回答 1

2

您建议的批处理脚本不起作用,因为该:RENAMETXT部分属于:RENAMEXML. 它可以通过简单地插入EXIT /Bbefore来修复: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
)
于 2012-10-07T14:26:06.757 回答