Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/powershell/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Powershell 从网络上的远程计算机获取*NIC信息?_Powershell_Nic - Fatal编程技术网

Powershell 从网络上的远程计算机获取*NIC信息?

Powershell 从网络上的远程计算机获取*NIC信息?,powershell,nic,Powershell,Nic,所以我是一名系统工程师,我想让我的工作更轻松一点。我们这里的编剧没有时间找我,因为他经常很忙,所以我希望这里有人能帮我。我知道一点powershell,但还没有达到我想用它的程度 我试图做的是使用一个预定义的IP地址列表,并从中获取所有网络接口卡信息。我试着自己写了两个脚本,但是他们把一些东西弄乱了,这样就飞不起来了。我买了一个脚本,但它一次只运行一台机器,每台机器大约需要2分钟。我基本上需要一个自治脚本来完成这项工作,并输出信息,这样我就可以给我的网络伙伴 我不是要求有人写整个剧本,而是给我一

所以我是一名系统工程师,我想让我的工作更轻松一点。我们这里的编剧没有时间找我,因为他经常很忙,所以我希望这里有人能帮我。我知道一点powershell,但还没有达到我想用它的程度

我试图做的是使用一个预定义的IP地址列表,并从中获取所有网络接口卡信息。我试着自己写了两个脚本,但是他们把一些东西弄乱了,这样就飞不起来了。我买了一个脚本,但它一次只运行一台机器,每台机器大约需要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'
因为它非常简单,所以我继续创建了一个带有更改的脚本副本。这可能会满足你的需求,但如果不是这样的话,你就可以开始了


我多次添加并调整了您的脚本版本。我总是出错。我不知道为什么在尚未定义变量$servername的情况下在IPAddress中使用$servername。我试图理解,但我有点困惑?我只想获取NIC描述和型号。这个脚本是买来的,它有太多的信息。我试着让脚本静音,我以前让它工作过,但是你对脚本开头的更改有点让人困惑。你能解释一下我做错了什么吗?你犯了什么错误?您在pastebin上的原始脚本在尝试访问某些子键时为我抛出了一些奇怪的错误。但这超出了这个问题的范围,我不知道这是否是我这边的权限问题。为了清晰起见,我将在上面的答案中为脚本添加注释。好的,下面是我的脚本。我真的只需要描述和模型。这就是我想要显示的,但是如果你创建一个“调用文件”并在你的机器上使用它,出于某种原因,它不会给我NICModel并重复这个过程四次。我不确定这是否只是因为这是我的责任。如果你看到我做错了什么,请告诉我。我有时需要为网络工程师获取近800台服务器*NIC信息,而过去的方法速度太慢。任何帮助都将不胜感激,我仍在学习并热爱powershell。您已经从该脚本中删除了太多的逻辑,使其无法工作。但是,这又超出了这个问题的范围。如果回答了,您应该将此问题标记为已回答,然后提交下一个问题。