我正在嘗試在 PowerShell 腳本中運行以下命令:
$settingsFile = dotnet user-secrets list -p "..\$project"
其中$project是描述檔案的字串變數.csproj。
當運行上述命令失敗時(因為不是每個專案都會有用戶機密),以下內容將被寫入輸出視窗:
Could not find the global property 'UserSecretsId' in MSBuild project '<PATH_TO_CSPROJ>.csproj'. Ensure this property is set in the project or use the '--id' command line option.
我想抑制這個輸出,同時仍然能夠設定$settingsFile變數。我該怎么做呢?我嘗試了以下修改,但都對我不起作用:
試著抓
try { $settingsFile = dotnet user-secrets list -p "..\$project"} catch{ }
這是取自這個 SO answer。然而,這并沒有做任何事情。
重定向錯誤流Out-Null
$settingsFile = dotnet user-secrets list -p "..\$project" | Out-Null
這是取自這個 SO answer。但是,這也沒有改變任何輸出。
Out-Null使用and重定向錯誤流2>&1
$settingsFile = dotnet user-secrets list -p "..\$project" 2>&1 | Out-Null
這確實阻止了命令寫入控制臺,但也導致變數$settingsFile未設定。
那么,是否有人對我如何能夠實作這一目標有任何其他想法?讓我知道是否有關于此問題的任何其他問題。
uj5u.com熱心網友回復:
將錯誤流重定向到$null:
$settingsFile = dotnet user-secrets list -p "..\$project" 2>$null
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/517241.html
標籤:电源外壳asp.net 核心
