所以我是一名系统工程师,我正努力让我的工作变得更轻松。我们的脚本在这里没有时间去找我,因为他经常很忙,所以我希望有人可以帮助我。我知道一点功率,但不是我试图使用它的程度。
我要做的是使用预定义的IP地址列表并从中获取所有网络接口卡信息。我自己尝试写了几个脚本,但是他们搞砸了一些东西,所以不会飞。我买了一个脚本,但它一次只能做1台机器,每台机器大约需要2分钟。我基本上需要一个自动脚本来执行此操作并输出信息,以便我可以将其提供给我的网络人员。
我不是要求有人写整个剧本,而是给我一些指导或几个例子?
这就是我所拥有的。我想让它从文件中读取,然后自动完成。
答案 0 :(得分:2)
如果您只想通过IP列表迭代当前脚本,则需要将脚本包装在ForEach循环中,然后在脚本管道的末尾包含对象到文本文件。
要从文本文件加载IP地址,只需创建一个每行一个 IP的新文件,然后使用Get-Content将文件加载到脚本中以供使用。
您需要更改脚本的顶部,
#This is the file where your IP or Computernames will go.
$IPAddresses = Get-Content 'c:\test\servers.txt'
$myCol = @()
# this Foreach will take each item that is in $ipaddresses and assign them to
# $servername one at a time and run the code within the block for each item in
# IPAddresses. $servername was the var name already so I just rolled with it
ForEach($servername in $IPAddresses){
$NicConfig = Get-WmiObject -Class Win32_NetworkAdapterConfiguration -ComputerName $serverName
ForEach ($Nic in $NicConfig)
并最后将所有收集的数据发送到文件,只需更改最后一行,如下所示:
$myCol | Out-file 'C:\test\Outfile.txt'
由于它非常简单,我继续创建了一个包含更改的脚本副本。这可能会满足您的需求,但如果没有,它应该让您开始。