Скрипт Powershell | Ищем совпадения из первых двух октетов - PullRequest
1 голос
/ 17 апреля 2019

У меня есть скрипт, который получает активный IP-адрес с компьютера, на котором он работает.Если первые два октета содержат это число, будет выведено «Я в PH».

Так что, если адрес 10.4.20.52, мне нужно создать решение, где, если IP-адрес -содержит «» 10.4"write" Я в PH "Иначе" Я не в PH ".

Я пытался использовать -Like -iLike и -contains, и, похоже, ни один из них не работает.

$NICIndex = Get-CimInstance -ClassName Win32_IP4RouteTable |
    Where-Object { $_.Destination -eq "0.0.0.0"-and $_.Mask -eq "0.0.0.0" } |
    Sort-Object Metric1 |
    Select-Object -First 1 |
    Select-Object -ExpandProperty InterfaceIndex
$AdapterConfig = Get-CimInstance -ClassName Win32_NetworkAdapter |
    Where-Object { $_.InterfaceIndex -eq $NICIndex } |
    Get-CimAssociatedInstance -ResultClassName Win32_NetworkAdapterConfiguration
$ipconfig = (Get-First $AdapterConfig.IPAddress);


$ipconfig


if ($ipconfig -contains '10.4.')
{
  Write-host "I'm in PH"  
}
else
{
  Write-host "I'm not in PH"
}

Есть идеи?

1 Ответ

1 голос
/ 17 апреля 2019
if ($ipconfig -like '10.4.*')  # or if ($ipconfig -match '^10\.4\.')
{
  Write-host "I'm in PH"  
}
else
{
  Write-host "I'm not in PH"
}
...