這可能嗎?我終於決定開始建立我的個人.NET開發環境,以更接近地模仿我將如何建立* NIX開發環境,這意味着認真學習Powershell。如何在PowerShell中捕獲信號?
我目前正在編寫一個函數,通過文件系統遞歸,設置工作目錄,因爲它爲了構建的東西。讓我困擾的一件事是,如果我按Ctrl + C退出該功能,則無論腳本最後一次出現在哪裏,都會使我無法工作。我試過設置一個trap
塊,它在運行時將目錄更改爲起始點,但這似乎只是針對Exception而設置(並觸發)。
如果這是在Unix中有根的語言,我會爲SIGINT
設置一個信號處理程序,但在Powershell中找不到類似的搜索。放在我的.NET上限上,我想象着某種事件,我可以附加一個處理程序,如果我不得不猜測,這將是一個事件$host
,但我找不到任何規範文檔System.Management.Automation.Internal.Host.InternalHostUserInterface
,沒有什麼軼事,我已經能夠搜索有幫助。
也許我錯過了一些完全明顯的東西?
最後一個直接的解決方案來清理CTRL-C終止工作(: – Callahan 2013-08-19 12:50:48