我正在使用gwmi在系统上返回大量不同的信息。我使用以下命令获取网络信息:
$networkInfo = gwmi win32_networkadapterconfiguration
返回一组网络适配器及其信息。由于我不介绍许多网络适配器,如何过滤掉“坏”的?我想我只需要获得具有IPv4地址的那些,但我该如何指定?
我是否必须在for循环中使用if嵌套,还是有更快的方法?
psuedo代码:
for ($i=0; $i -lt $networkInfo[$i].length; $i++){
if($networkInfo[$i].IPAddress has a value){
#do stuff
}
}
答案 0 :(得分:6)
正如评论中提到的,您可以使用Where-Object命令过滤管道中的结果。对于您的特定需求,这应该有效:
gwmi win32_networkadapterconfiguration | where IPAddress -NE $NULL