在OS X上退出应用程序/进程的有效方法



OS X上按应用程序名称退出应用程序的最佳方法是什么?

要么我可以使用苹果脚本

NSString *scriptSource = [NSString stringWithFormat:@"tell application "%@" to quit",processName];
NSAppleScript *script = [[NSAppleScript alloc] initWithSource:scriptSource];
[script executeAndReturnError:nil];

否则,我可以继续使用 NSTask 执行 ps 命令,执行 grep 和 awk 以检索进程的 pid,然后使用 pid 退出进程,如下所示。

ps aux | grep -v grep |grep <process name> | awk '{print $2}'

在这种情况下,我最终使用 NSTask 4 次 + 1 次以上时间来终止进程。

就性能而言,哪个效率更高?

将输出通过管道传输到xargs命令,如下所示。

ps aux | grep -v grep |grep <process name> | awk '{print $2}' | xargs kill

ps aux | grep -v grep | awk '/process name/{print $2}' | xargs kill

这将杀死所有 4 个进程。

相关内容

最新更新