-1

我需要你的帮助...我正在编写一个将计算机添加到域的 powershell 脚本。我已经使用添加计算机完成了此操作,但我的主要问题是我想检查加入是否成功。如果不成功,我想再试一次,直到操作完成。这是脚本:

$j = add-computer -domainname mydomain -credential mydomain\
While ( $j -ne 0){
 $j = add-computer -domainname mydomain -credential mydomain\
}

如果加入完成或未完成,脚本正在运行并且它永远不会结束。

我尝试使用 DO... 直到:

    do { 
    $j = add-computer -domainname mydomain -credential mydomain\ }
until ($j -eq o)

但我有同样的问题......

你能帮我吗?

4

1 回答 1

1

您可以为命令“Add-Computer”指定参数“-PassThru”。根据您的输入,命令将如下所示:

$j = Add-Computer -DomainName mydomain -Credential mydomain\ -PassThru

如果加入成功,“$j”现在包含信息。您可以通过以下方式获取状态:

$j.HasSucceeded

它会在成功时为您提供“$True”,在错误时为您提供“$False”。有了这些信息,您可以根据需要形成您的 IF 子句:

IF ( $j.HasSucceeded -eq $false ) { ...

编辑: 基于您的输入的简单示例:

Do {

    Try {    
        $j = Add-Computer -DomainName mydomain -Credential mydomain\test -PassThru -ErrorAction Stop
    }

    Catch {
        $Error[0].Exception
    }

} While ( $j.HasSucceeded -ne $true )

亲切的问候

于 2017-06-18T17:56:17.963 回答