[System.Net.Dns] :: GetHostbyAddress COMPARE字符串

时间:2015-11-30 17:42:46

标签: powershell

我有一个包含主机名及其IP地址的CSV文件,我已在其上部署了一些东西,但我只能使用他们的IP地址。

因此,在开始部署之前,我需要确认IP地址是否仍然与主机名匹配。

我写了这个剧本,但没有按照我的预期做... 任何人都可以看到问题出在哪里?

由于

$computerName = 'testName'
$computerIP = '192.168.32.148'

$var1 = [System.Net.Dns]::GetHostbyAddress("$computerIP").hostname

if ($var1 -like $computerName) {

    "$computerName IS LIKE $var1"
}else{
    "$computerName NOT LIKE $var1"
}

输出

testName NOT LIKE testName.mycompany.net

期望的输出

testName IS LIKE testName.mycompany.net

1 个答案:

答案 0 :(得分:2)

var xAxis = d3.svg.axis() .scale(x) .orient("bottom") .tickFormat(d3.time.format,30) .tickFormat( function(d) { var toDisplay = d3.time.format('%H:%M')(new Date(d)); toDisplay = toDisplay.substring(0,3) + "0"; return toDisplay; }) 使用精确的通配符匹配,并且您在-like操作中没有使用任何通配符!

试试这个:

-like

(注意if ($var1 -like "$computerName*") { "$computerName IS LIKE $var1" }else{ "$computerName NOT LIKE $var1" } 值之后的*

有关通配符匹配的详细信息,请查看Get-Help about_Wildcards