【发布时间】:2020-01-27 00:43:17
【问题描述】:
我有一个包含大约 200 个服务器名称列表的文本文件,还有一个批处理文件,它将提供与服务器上托管的 IIS 站点相关的输出。
我尝试了示例批处理文件,但对我不起作用。
这是我用来获取所有与服务器相关的iis站点信息的批处理文件。
(net config workstation | findstr /C:"Full Computer name"
________________________________________
@ipconfig /all | find "IP Address"
@ipconfig /all | find "IPv4 Address"
@ipconfig /all | find "Subnet Mask"
@ipconfig /all | find "Default Gateway"
@ipconfig /all | find "Host Name"
@ipconfig /all | find "DNS Suffix Search List"
@ipconfig /all | find "Physical Address"
@ipconfig /all | find "DHCP Enabled"
@ipconfig /all | find "DHCP Server"
_________________________________________
cd c:\Windows\system32\inetsrv
appcmd list site
appcmd list apppool) > c:\IISSiteBindings.txt
我需要一个批处理文件,它将调用包含服务器名称列表的文本文件,并且对于每个服务器,批处理需要执行上述脚本文件以在文本文件中获取与服务器相关的所有信息输出格式。
【问题讨论】:
-
对于任何对这个问题感到困惑的人,它与发布的批处理文件代码绝对没有关系。它是“如何在文本文件中每行列出一个服务器上运行批处理脚本?”
-
提示:你考虑过powershell吗?与 .bat 文件相比,使用它做事通常不会那么令人沮丧。
-
您可能需要考虑 WMI 命令行可执行文件
WMIC来执行此任务。打开命令提示符窗口并输入wmic /?以读取其使用信息。例如,像这样的东西,WMIC /Node:@Servers.txt /User:Administrator /Password:MyPa55w0rd /Output:Results.log Process Call Create "serverPath\MyBatch.cmd"可能会有所帮助。
标签: batch-file scripting