我想让一个程序 redshift 在后台运行,而不是让终端不断打开。我从一个论坛我可以通过输入 $ redshift &
后跟来做到这一点$ disown
。但是,我不知道如何在不重新启动计算机的情况下停止此过程。我确信它在某个地方被描述过,但我对 Linux 是文盲。如果您能简单地解释一下如何阻止这种情况,我将不胜感激。
答案1
第一步是查找进程的 ID 号(称为进程 ID - PID)。一个很好的查找它的实用程序是pgrep
,您可以在其中指定进程名称的一部分,它会返回每个匹配的 PID:
pgrep redshift
ps aux | grep redshift
如果有多个匹配项,也有助于确定正确的流程。
下一步是发送信号然后终止进程:
kill PID
其中 PID 是返回的数字pgrep
你可以发送具有不同语义的不同信号,例如kill -SIGKILL PID
保证终止进程,但它没有留下清理的空间;kill PID
和/或kill -SIGINT PID
通常是优选的。
还有pkill
一个会向与名称匹配的进程发送信号。