批处理文件将文本文件设置为循环中的单个变量行
问题描述:
我试图编写批处理文件来运行域列表,然后将每个文件作为变量使用,然后对这些文件运行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
)
工作正常!谢谢! – Luke