我正在编写/编辑/黑客一个powershell脚本来添加环回适配器。
一旦我添加了新的环回适配器,我需要掌握它。我目前这样做:
$nic = Get-WmiObject Win32_NetworkAdapterConfiguration -Filter "Description='Microsoft Loopback Adapter'"
但这仅在当前没有任何环回适配器时才有效。如果我已经有一个,然后添加另一个,那么这将返回第一个。我想要的是这个列表中的 last (或最近的)我要回到“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中是否可行?
答案 0 :(得分:2)
根据您的结果,我发现对ServiceName的过滤会更可靠:
Get-WmiObject Win32_NetworkAdapterConfiguration -Filter "ServiceName='msloop'" |
Sort-Object Index |
Select-Object -Last 1
答案 1 :(得分:1)
尝试这样的事情:
Get-WmiObject Win32_NetworkAdapterConfiguration -Filter "Description='Microsoft Loopback Adapter'" | Sort-Object Index -descending | Select-Object -first 1
获取说明为“Microsoft Loopback Adapter”的所有实例,按索引值降序对其进行排序,然后选择最上面的一个。