如何从powershell脚本中的cmdlet捕获退出代码

时间:2013-06-12 18:30:51

标签: windows powershell scripting powershell-v3.0

我对powershell脚本非常陌生,而且我有一段时间试图捕捉一些事情是失败还是成功。我有一个简单的例子:

test1.ps1

get-psdrive -name ds | out-null

if($? -ne "False")
{ 
   echo "drive doesn't exist"
}
else { echo "Found drive" }

然而,这不适合我。我也尝试了变量$ LastExitCode,但这也不起作用。我在这里严重误解了一些事情。有人可以指出我正确的方向或给我一个工作的例子

1 个答案:

答案 0 :(得分:2)

尝试这样的事情:

$drive = Get-PSDrive -Name ds 2>Out-Null

$drive = Get-PSDrive -Name ds -EA SilentlyContinue

如果cmdlet成功,$drive将保留驱动器对象,否则其值为$null

if ($drive -eq $null) {
  echo "Drive doesn't exist."
} else {
  echo "Found drive."
}