############################################################################################ -------------获取PC物理网卡IP.ps1-----------------## 1. 将虚拟软件的虚拟网卡或VPN等非物理网卡IP排除在外;## 2. 脚本最终解释权,归项目运营IT部所有##########################################################################################function ip{ $macadd = (Get-NetAdapter -Physical | ? Status -EQ "Up").MacAddress $address = foreach($address in (ipconfig /all) -like '*地址*') { ($address -split ' : ')[-1]} # $macadd使用ForEach-Object,是考虑到PC有多个物理网卡 $macadd | ForEach-Object{ # 将$_赋值给$macadd, 是为了和$address的$_做区分 $macadd = $_ $address | ForEach-Object{ if($_ -like '*首选*'){ $index = [array]::IndexOf($address, $_) $host_mac = $address[$($index-1)] if($host_mac -eq $macadd){ $ip = ($_ -split '\(')[0] return $ip } } } } }