这可能吗?我最终决定开始设置我的个人 .NET 开发环境,以更接近地模仿我设置 *NIX 开发环境的方式,这意味着认真学习 Powershell。
我目前正在编写一个通过文件系统递归的函数,设置工作目录以便构建东西。困扰我的一件小事是,如果我 Ctrl+C 退出该函数,它将让我离开脚本最后的位置。我尝试设置一个trap
块,在运行时将 dir 更改为起点,但这似乎仅适用于(并触发)异常。
如果这是一种在 Unix 中有根的语言,我会为 设置一个信号处理程序SIGINT
,但我在 Powershell 中找不到任何类似的搜索。戴上我的 .NET 帽子,我想象有某种事件可以附加一个处理程序,如果我不得不猜测,这将是一个事件$host
,但我找不到任何规范文档System.Management.Automation.Internal.Host.InternalHostUserInterface
,我能够搜索到的任何轶事都没有帮助。
也许我错过了一些完全明显的东西?