我有一个简单的终端应用程序,我想在它完成后关闭它(实际上关闭它打开的终端实例)。
关于如何杀死mac应用程序有很多问题,但似乎没有一个问题适用于终端mac应用程序。
我尝试在我的程序结束时运行以下程序:
NSApplication.sharedApplication().terminate(0)和
kill(getppid(), SIGKILL);但它们都没有真正关闭窗户。有没有人能给我指出正确的方向,或者这是否可能?
发布于 2016-03-21 13:09:33
简单地执行:
exit(0);..。将立即终止任何mac进程,无论是终端命令行工具还是完整的GUI应用程序。
你不应该在GUI应用程序中这样做,因为在退出之前会绕过任何旨在保存用户数据的东西,但这是终端中的正确功能。
只有当命令行工具没有在shell中运行时,终端窗口才会关闭。即使这样,如果“当外壳退出时”被设置为“关闭窗口”或“如果外壳干净地退出则关闭窗口”,终端将只关闭窗口。
提供给退出的数字0表示您的工具干净地退出了。返回其他一些数字以防止窗口关闭(并且您应该打印一条错误消息)。
https://stackoverflow.com/questions/36121597
复制相似问题