我已將Chocolatey安裝程序捆綁到PowerShell中:我的腳本調用安裝過程的函數。用戶應該在PowerShell中運行.\install.ps1
。如果已安裝該軟件包的輸出類似於:我應該在我的包裝腳本中重寫Chocolatey的警告消息嗎?
<Packagename> already installed.
Use --force to reinstall, specify a version to install, or try upgrade.
好了,所以用戶應該覺得.\install.ps1 --force
會做的伎倆。不幸的是,我發現沒有辦法讓PowerShell來接受雙破折號(--
),所以我想從巧克力味重寫警告消息,所以它輸出的-force
代替--force
:
<Packagename> already installed.
Use -force to reinstall, specify a version to install, or try upgrade.
我setup.ps1
文件類似於:
Install-App <Packagename + parameters>
我的腳本調用函數是類似於:
function Install-App
{
//..code ommited..
$chocoCommand = "choco install <Packagename + parameters>"
iex $chocoCommand
}
我一直在想try/catch,但還沒弄明白。
有什麼建議嗎?
問候
_很遺憾,我找不到PowerShell接受雙破折號的方法_--您嘗試了什麼? – rrirower
對於一些進一步的調查,我發現這一點: 的foreach($精氨酸中的$ args){ 如果 ($ ARG -Eq 「--force」) {$ = forceParameter 「--force」 }} 問題出現了:這是一個很好的解決方案嗎?我可以輕鬆地將$ forceParameter傳遞給我的函數。 –
你有多個參數可以傳遞嗎? – rrirower