PowerShell 3.0上的自定义属性

时间:2013-08-01 03:28:47

标签: powershell powershell-v3.0

我很擅长使用shell,但我做错了。

这是我的剧本

Write-Host "PowerShell Version = " ([string]$psversiontable.psversion) 
for($i=1; $i -le 3; $i++)    
{
    $failedObject = @{'IPAddress'='192.168.0.1';
                'Username'='someusername';
        'FailedAttempts'= 0;
                }

    $failedObject.FailedAttempts = 10

    Write-Host $failedObject.IPAddress
    Write-Host $failedObject.Username    
    Write-Host $faileObject.FailedAttempts
}

这是输出

PS C:\Users\Administrator> C:\PSScripts\pstest2.ps1
PowerShell Version =  3.0
192.168.0.1
someusername

192.168.0.1
someusername

192.168.0.1
someusername

我认为我在向对象添加自定义属性时遇到了问题,但不确定我做错了什么。它似乎只发生在FailedAttempts属性上,而不是用于Username或IPAdress属性。

这是因为它是一个int属性。我究竟做错了什么?最终我想要找到一个基于IPAddress和Username的对象,并将FailedAttempts增加1,或者根据IPAddress和Username将对象添加到现有数组......你有简单的代码吗?

我想我现在的主要问题是为什么FailedAttempts没有出现在Write-Host中?

1 个答案:

答案 0 :(得分:2)

你在这一行上有一个错字:

Write-Host $faileObject.FailedAttempts

仔细观察。