Shell脚本 - 当应用程序未运行时自杀

时间:2009-10-01 23:31:44

标签: shell

我的Cocoa应用程序正在执行shell脚本。我想这样做,以便shell脚本在发现主机.app未运行时自动终止。现在我所拥有的是每次执行命令之前使用UNIX“ps”命令轮询shell脚本,然后在应用程序未运行时自行终止。然而,这种轮询会浪费资源,那么有更好的方法吗?

我正在使用默认的bash shell使用Mac OS X 10.6。

1 个答案:

答案 0 :(得分:2)

您的问题中不清楚的是您目前的投票方式。您使用的方法是否浪费了?或者你想完全消除民意调查?

bash变量PPID是其父进程的进程ID。所以

ps -p ${PPID}
if [ $? -eq 0 ]; then exit; fi

看起来效率很高。

轮询的替代方法是让应用程序在shell退出之前发出信号。