正如标题所述,我想安排应用程序正常终止,然后在终止后重新启动。这样做的原因是应用程序很少会无规律地挂起。每天重新启动一次可以解决这个问题。
谢谢你!
答案1
正常终止应用程序的信号是SIGTERM
(信号编号 15) - 强制终止应用程序的信号是SIGKILL
(信号编号 9)。
或者,对于某些应用程序,您可以使用SIGHUP
(信号编号 1)来重新启动应用程序并重新加载配置。
因此基本命令如下:
kill -s 15 -p <PID>
查找PID
进程的一种方法是使用pgrep
- 或者您可以使用组合命令pkill
,它会查找使用pgrep
然后发送信号(SIGTERM
默认)。
如果你要终止它htop
(实际上没有意义,但只是作为示例)并重新启动它,脚本命令将是:(以 root 身份运行)
# pkill sends signal 15 as default
pkill htop
# start htop again
htop
或者如果 aSIGHUP
就足够了:
# tell pkill to send signal 1 instead
pkill -s 1 htop
另一个选择是使用killall
命令,它也通过进程名称发送信号。
另请参阅手册页:
最后看到此处有更多信息。