所有!
向所有使用关闭实用程序指定近期关闭序列的Mac OS X用户提出的问题:
如果您查看了它的输出,您可能已经注意到关闭会在指定的时间点接近时打印一些信息,但如果按Enter键,则(!)你回来了 bash 。 (似乎关闭能够在后台运行时打印到其终端。)
它是如何做到的?我会很感激相关的C代码片段或链接。
提前致谢!
答案 0 :(得分:1)
Shutdown只会向init
系统发送一条消息。 init
正在shell中打印消息。这是因为Unix以前用于运行多用户系统,init
需要告诉每个人系统正在关闭,而不仅仅是运行shutdown
的系统管理员。
听起来你想要编写一些似乎立即退出的代码,但仍会向控制台发出一些东西。从用户的角度来看,这是相当令人讨厌的行为,所以请不要这样做。
但是,您可以使用shell脚本轻松完成此操作:
#!/bin/sh
sleep 60
echo "feeling sleepy?"
然后在后台运行
$ ./sleepy.sh &