PDA

查看完整版本 : 用户按下Control-C后可以强制退出MATLAB吗?


poster
2019-12-10, 20:48
我正在从外壳程序脚本运行MATLAB(命令行版本),并且希望它保留外壳程序行为,如果您按Ctrl - C则退出。但是相反,它想保持对终端的控制权,而我(或我之后的可怜用户)必须键入quit(1)使其退出并告诉Shell失败。

您无法使用try / catch块拦截Ctrl - C ,还有其他想法吗?我可以从外壳程序做的任何事情来拦截击键,然后再进入MATLAB?

onCleanup似乎是一个选择,但随后我必须将整个脚本内容变成一个函数(它已经是Makefile中动态生成的try / catch块内容)。但是,如果那是唯一可行的方法,那么我会做的...



回答:

使用onCleanup :

我想做同样的事情,但是读完这个线程 (http://groups.google.com/group/comp.soft-sys.matlab/browse_thread/thread/49e3e39ad0f5e7d9?pli=1)后,我成功使用了onCleanup (http://www.mathworks.com/help/techdoc/ref/oncleanup.html?) 。我的问题是我在Matlab中有一台服务器,当按CTRL + C时将继续listen它在端口上启动的端口->第二次运行时,我将收到bind错误。



更多&回答... (https://stackoverflow.com/questions/3946061)