我想要替换我的表中的变量,但我似乎无法做到这一点。在一个成功的ping,我想Success
下的值更改为1,但无论我做什么,它一直是一个0 $ping
目前返回是这样的:无法更改成功ping对象值
+-------------------+----------+
| Hostname | Success |
+-------------------+----------+
| BVL-W71455781745 | 0 |
| BVL-WX966103545 | 0 |
| BVL-W7583554017 | 0 |
+-------------------+----------+
$ping = Import-csv C:\temp\pingtst.csv -Header 'Hostname' | Select-object *,@{Name='Success';Expression={'0'}}
$i = 0
foreach ($HostName in $ping.Hostname) {
if (Test-Connection -ComputerName $HostName -count 3 -Quiet)
{
$ping.Success[$i] = '1'
$i = ($i + 1)
} else
{$ping.Success[$i] = '0'
$i = ($i + 1)
}
}
您应该责怪“成员枚举”(PowerShell v3 +功能),它可以让您编写'$ ping.Hostname'或'$ ping.Success'。 – PetSerAl