使用 if 条件检查命令执行状态
Checking command execution status using if condition
我在 Windows10.
上使用 Powershell 5.1 版
我在下面的代码中尝试检查执行状态,如果有效则输出成功,否则失败。
当我 运行 代码时,代码可以运行,但输出失败。
代码如下
if(Enable-LocalUser -Name TEST)
{
Write-Host "Success"
}
else
{
Write-Host "Failed"
}
如何正确确认命令执行?请帮忙
你可以用$?检查最后一个powershell命令是否成功执行:
Enable-LocalUser -Name TEST
if($?)
{
Write-Host "Success"
}
else
{
Write-Host "Failed"
}
如果您需要异常详细信息,那么我建议尝试捕获:
try{
Enable-LocalUser -Name TEST2 -ErrorAction Stop
#The below line will only run if enable-localuser did not generate any exception
Write-Host "Success"
}
catch
{
Write-Host "Failed,Due to :"
$_.exception
}
$?包含最后一个操作的执行状态。如果上次操作成功则它包含 TRUE,如果失败则包含 FALSE。(Excerpt from: Powershell Automatic Variables Documentation)
我在 Windows10.
上使用 Powershell 5.1 版我在下面的代码中尝试检查执行状态,如果有效则输出成功,否则失败。
当我 运行 代码时,代码可以运行,但输出失败。
代码如下
if(Enable-LocalUser -Name TEST)
{
Write-Host "Success"
}
else
{
Write-Host "Failed"
}
如何正确确认命令执行?请帮忙
你可以用$?检查最后一个powershell命令是否成功执行:
Enable-LocalUser -Name TEST
if($?)
{
Write-Host "Success"
}
else
{
Write-Host "Failed"
}
如果您需要异常详细信息,那么我建议尝试捕获:
try{
Enable-LocalUser -Name TEST2 -ErrorAction Stop
#The below line will only run if enable-localuser did not generate any exception
Write-Host "Success"
}
catch
{
Write-Host "Failed,Due to :"
$_.exception
}
$?包含最后一个操作的执行状态。如果上次操作成功则它包含 TRUE,如果失败则包含 FALSE。(Excerpt from: Powershell Automatic Variables Documentation)