我对 powershell 脚本编写非常陌生,并且在 try catch 某件事是失败还是成功时遇到了很大的困难。我有一个简单的例子:
测试1.ps1
get-psdrive -name ds | out-null
if($? -ne "False")
{
echo "drive doesn't exist"
}
else { echo "Found drive" }
但这对我不起作用。我还尝试了变量 $LastExitCode 但这也不起作用。我在这里严重误解了一些事情。有人可以指出我正确的方向或向我展示一个可行的示例吗
最佳答案
尝试这样的事情:
$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."
}
关于windows - 如何从 powershell 脚本中的 cmdlet 捕获退出代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17072739/