1

我正在编写/编辑/破解一个 powershell 脚本来添加环回适配器。

一旦我添加了新的环回适配器,我需要处理它。我目前这样做:

$nic = Get-WmiObject Win32_NetworkAdapterConfiguration -Filter "Description='Microsoft Loopback Adapter'"

但这仅在当前没有任何环回适配器时才有效。如果我已经有一个,然后添加另一个,那么这将返回第一个。我想要的是此列表中的最后一个(或最近的)一个,我想取回“Microsoft Loopback adapter #2”,在我想要“Microsoft Loopback adapter #3”之后的时间,等等......

DHCPEnabled      : False
IPAddress        : {192.168.1.90}
ServiceName      : msloop
Description      : Microsoft Loopback Adapter
Index            : 17

DHCPEnabled      : True
IPAddress        : {169.254.115.94, fe80::bc90:a8ba:b435:735e}
DefaultIPGateway :
DNSDomain        :
ServiceName      : msloop
Description      : Microsoft Loopback Adapter #2
Index            : 18

这在powershell中可能吗?

4

2 回答 2

2

根据您的结果,我发现对 ServiceName 进行过滤会更可靠:

Get-WmiObject Win32_NetworkAdapterConfiguration -Filter "ServiceName='msloop'" | 
Sort-Object Index | 
Select-Object -Last 1
于 2012-10-18T16:31:57.010 回答
1

尝试这样的事情:

Get-WmiObject Win32_NetworkAdapterConfiguration -Filter "Description='Microsoft Loopback Adapter'" | Sort-Object Index -descending | Select-Object -first 1

获取描述为“Microsoft Loopback Adapter”的所有实例,按索引值降序对它们进行排序,然后选择顶部的一个。

于 2012-10-18T15:58:04.373 回答