1

我正在使用 gwmi 在系统上返回许多不同的信息。我使用以下命令获取网络信息:

$networkInfo = gwmi win32_networkadapterconfiguration 

它返回一组网络适配器和有关它们的信息。由于有许多我不感兴趣的网络适配器,我如何过滤掉“坏”的?我想我只需要获得具有 IPv4 地址的那些,但我该如何指定呢?

我是否必须使用嵌套在 for 循环中的 if,还是有更快的方法?

伪代码:

for ($i=0; $i -lt $networkInfo[$i].length; $i++){
    if($networkInfo[$i].IPAddress has a value){
        #do stuff
    }
}
4

1 回答 1

6

正如评论中提到的,您可以使用Where-Object命令过滤管道中的结果。对于您的特定需求,这应该有效:

gwmi win32_networkadapterconfiguration | where IPAddress -NE $NULL
于 2014-01-28T01:27:07.707 回答