我有兴趣知道我们是否可以在Powershell中捕获SIGINT,SIGHUP等效信号以及如何做到这一点?
在unix环境中,我也无法找到PowerShell中的“stty -echo”等等。
谢谢,
答案 0 :(得分:0)
我认为Windows 的功能一般不等同于Unix信号。 API函数GenerateConsoleCtrlEvent和SetConsoleControlHandler是 尽可能接近你,但我不知道他们是否暴露在任何地方 Powershell的方式。如果您需要Windows等效产品,我认为您完全没有运气 一些比较深奥的Unix信号,如SIGHUP。
编辑:我从上一个问题的答案中看到了Powershell
确实有一个trap
命令 - 但它似乎处理.Net异常,这
我不认为相当于Unix信号。
关于stty -echo
的等效内容 - 抱歉,不知道。
答案 1 :(得分:0)
我没有太多使用终端,但经过一些搜索试图理解stty -echo
的重要性后,我认为你可以通过为PInvoke SetConsoleMode创建一个帮助器来获得类似的效果。
至于SIGINT(如果我理解的话),我认为.NET和PowerShell中存在中断异常。但这可能只适用于线程和管道。