【问题标题】:Can I Force MATLAB to quit after user presses Control-C?用户按下 Control-C 后,我可以强制 MATLAB 退出吗?
【发布时间】:2011-04-26 03:41:59
【问题描述】:

我正在从 shell 脚本运行 MATLAB(命令行版本),我希望它保留 shell 行为,如果你按下 Ctrl-C 它退出。但相反,它想保持对终端的控制,而我(或我之后的可怜用户)必须输入 quit(1) 以使其退出并告诉 shell 它失败了。

您不能用try/catch 块拦截 Ctrl-C...还有其他想法吗?我可以从 shell 端做些什么来在击键到达 MATLAB 之前拦截它们?

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

【问题讨论】:

    标签: bash shell matlab signals


    【解决方案1】:

    使用onCleanup:

    我想做同样的事情,但在阅读this thread 之后,我成功使用了onCleanup。我的问题是我在 Matlab 中有一个服务器,当按下 CTRL+C 时,listening 会保留在它启动的端口上 -> 第二次运行我会得到一个 bind 错误。

    【讨论】:

      【解决方案2】:

      你可以试试:

      stty quit ^C
      

      但我没有 matlab 来测试它。

      【讨论】:

        猜你喜欢
        • 2011-08-19
        • 2012-03-02
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-05-21
        • 1970-01-01
        • 2011-01-31
        相关资源
        最近更新 更多