朋友你好:)首先我会告诉你当前的情况然后问题 .

::情况::

我有一个批处理文件,它为computerList.txt文件中的每个列出的主机名/ IP启动单独的cmd实例和psexec连接 .

FOR /F %%i in (computerList.txt) DO (
start cmd /k "PsExec \\%%i -s cmd /c \\server\Commands.bat >> %LOGFILEpath%"
)

它作为参数传递给bat文件,该文件包含我希望计算机运行的所有命令 . 它在每台计算机上本地保存一些数据到变量,然后简单地用“echo”调用所有变量,格式如csv,比如说:

echo %date%,%time%,%hostname%,%outputOfTheMainCommand%

该行应写入日志文件,以便我可以使用excel将其作为csv打开,并轻松地生成一份体面的报告 .

::问题::

上面描述的过程,在使用单个实例循环computerList.txt时,将每个执行的输出捕获到日志文件很简单 . 此时我的“创新”现在是开始多个实例来做同样的事情,这样我就可以节省更多的时间 .

问题在于只有第一台计算机才能编写文件 . 在所有其他实例窗口中,我收到日志文件正在使用的消息,因此我无法将输出写入其中 .

有没有办法将所有实例的输出重定向到单个日志文件?我该怎么做?我想要获取父批次(在变量数组或其他东西中)首先捕获的实例的输出,然后将它们全部发送到日志文件,但我不知道该怎么做 .

有帮助吗?非常感谢!