我有一個我在PowerShell ISE中編寫的腳本,可以很好地工作。 如果我將其複製並粘貼到常規PowerShell中,它甚至可以工作。然而,當我使用普通的PowerShell運行它,並將它作爲默認程序打開它時,然後雙擊它,它會打開,顯示一些紅色文本,然後關閉。PowerShell退出
有沒有辦法阻止它關閉,所以我可以查看紅色文本或這是一個可以很容易修復的常見問題?
我有一個我在PowerShell ISE中編寫的腳本,可以很好地工作。 如果我將其複製並粘貼到常規PowerShell中,它甚至可以工作。然而,當我使用普通的PowerShell運行它,並將它作爲默認程序打開它時,然後雙擊它,它會打開,顯示一些紅色文本,然後關閉。PowerShell退出
有沒有辦法阻止它關閉,所以我可以查看紅色文本或這是一個可以很容易修復的常見問題?
嘗試從命令提示符運行使用:
powershell -noexit <path to the script>
此外,我認爲錯誤的腳本可以從執行阻止腳本拋出可能是由於政策執行你的機器上。否則成績單將起作用。確保使用Set-ExecutionPolicy
cmdlet正確設置執行策略。
出於安全原因,設置PowerShell腳本雙擊時運行的做法是highly discouraged。請確保您在繼續之前瞭解所涉及的風險。
您不能簡單地通過Windows資源管理器界面「將Powershell作爲默認程序」。使用PowerShell上下文菜單選項運行使用下面的命令:
"C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe" "-Command" "if((Get-ExecutionPolicy) -ne 'AllSigned') { Set-ExecutionPolicy -Scope Process Bypass }; & '%1'"
「最安全」的方式(銘記上述警告)做你正在努力實現的是使用Default Programs Editor設置使用Powershell上下文菜單選項作爲默認選項運行。
一個簡單的方法,無論如何都是一個很好的做法,就是在腳本的開頭附近使用start-transcript命令,以便將輸出記錄到文件中。 –
.psq腳本不應該由PowerShell打開。例如,您可以通過名稱在PowerShell中運行它。 \ script.ps1。 – Alexan
開始成績單。我扔在那裏,沒有輸出。在正常的PS中沒有文件,但是在ISE中沒有文件。所以沒有幫助。 – Captor