我有一個Powershell腳本運行,它從一個點源.ps1文件調用一個函數。
在這個函數中,我做了一個exit 1
,它終止了整個腳本(如預期的那樣)。
當我現在看$?
和$LASTEXITCODE
它說True
和0
。
不應該有False
和1
?
有什麼我沒有看到?從子功能終止時從powershell腳本退出代碼
例子:
主腳本:
Log-Error -Error "some error" -exit $True
在function.ps1:
Function Log-Finish {
[CmdletBinding()]
Param ([Parameter(Mandatory=$false)][boolean]$Exit)
Process {
" error "
# If $Exit is $true, end calling script
If(($Exit) -or ($Exit -eq $True)) {
Exit 1
}
}
}
顯示您的代碼。我嘗試,描述你的內容,並在結果中得到'False'和'1'。 – PetSerAl
已添加到原文 – user3322838
請包括調用主腳本和檢查'$?'和'$ LASTEXITCODE'的代碼。在function.ps1中你有'Log-Finish',但在主腳本中調用'Log-Error'。 – PetSerAl