批处理文件将文本文件设置为循环中的单个变量行

问题描述:

我试图编写批处理文件来运行域列表,然后将每个文件作为变量使用,然后对这些文件运行reg导出,如下所示: -批处理文件将文本文件设置为循环中的单个变量行

for /f "delims=" %%x in (domains.txt) do set Domain=%%x 
GOTO :ExportReg 

:ExportReg 
reg export HKEY_LOCAL_MACHINE\SOFTWARE\Ipswitch\IMail\Domains\%Domain% C:\export-%Domain%.txt 
echo %%Domain%% 

:End 

但这只是试图输出它的所有相同的文件,导致覆盖误差

所以输出为c:\出口domain.com.txt那么下一个是说domain.co .uk,但它试图再次将其写入domain.com.txt。

您的初始代码只会处理您的domains.txt文件中的最后一个域。我想你会想要处理所有的域名。执行FOR命令中的所有内容会容易得多。

for /f "delims=" %%x in (domains.txt) do (
    reg export HKEY_LOCAL_MACHINE\SOFTWARE\Ipswitch\IMail\Domains\%%x C:\export-%%x.txt 
) 
+0

工作正常!谢谢! – Luke