我正在使用基本命令行程序将.xml文件转换为.csv。我让它使用
对目录中的所有.xml文件执行操作FOR %I in (..\xmlinput\*.xml) DO XmlToCsv.Console.exe -xml %I -dir ..\csvoutput\
这样可以正常工作,但是所有输出文件都被命名为r.csv,所以每次循环时都会覆盖以前的r.csv。如何在下一个循环运行之前逐步重命名输出(r1.csv,r2.csv等)并覆盖以前的输出? (XmlToCsv.Console.exe没有其他参数可供使用)。非常感谢。
答案 0 :(得分:1)
在批处理文件中,您可以尝试:
@echo off
setlocal EnableDelayedExpansion
set "counter=1"
FOR %%I in (..\xmlinput\*.xml) DO (
XmlToCsv.Console.exe -xml %%I -dir ..\csvoutput\
ren "..\csvoutput\r.csv" "r!counter!.csv"
set /a "counter+=1"
)
请注意,由于这是批处理文件而不是单个命令,因此您需要使用%%I
而不是%I
。您可能还需要更改重命名命令的路径。