首先,我要感谢任何贡献者的帮助。在创建批处理文件方面,我是初学者,所以我希望提供足够的信息来回答我的问题。
我有一个名为storagetool.exe的程序,期望有三个变量;服务器,地区和prodid。
服务器数量已知且值为静态。
区域数量已知且值为静态。
可能不知道产前的数量。昨天我有4个产品需要检查,今天我有100多个。
所以在命令终端我输入'storagetool.exe server1 9 9999'然后我会收到输出,我输入一个名为productlog.txt的文本文件
----------Productlist.bat file-------------------------------
@(
StorageTool.exe server1 14 000123
echo _________________________________________________________________
) > productlog.txt
---------End of Productlist.bat------------------------------------------------
我想要做的是拥有一个文本文件,其中包含我正在测试的所有产品,并从中获取批处理文件。 我仍然希望文件的输出有一个长行来分隔每个prodid的输出,以帮助我阅读它。
最终结果将是
---------prodid.txt-----------------------------------
00001
00002
00003
ext..
----------end of prodit.txt-----------------
批处理文件的输出看起来像;
(output of storagetool.exe server1 14 0001)
echo ______________________________
(output of storagetool.exe server1 14 00002)
echo ______________________________
(output of storagetool.exe server1 14 00003)
echo ______________________________
ext ...用管道传输到文本文件Prodlog.txt
感谢您的帮助,非常感谢。
答案 0 :(得分:1)
@echo off
(for /f "delims=" %%a in (prodid.txt) do (
echo --------------------------------
StorageTool.exe server1 14 %%a
)) > productlog.txt
对于文件中的每一行,检索该行,将其数据存储在for
可替换参数%%a
中,并执行(对于每一行)do
子句中的代码。 / p>
所有输出都被重定向到日志文件