问题
您是否知道通过单击进程生成的图形窗口来发送SIGSTOP
(暂停进程)或(恢复)进程的任何工具/脚本?SIGCONT
一些上下文
已经有一个名为xkill
通过单击窗口杀死程序的工具,但它没有发送特定信号的选项。这是一个遗憾,因为有点相关的命令行工具之类kill
的都有这个选项。
通常我通过命令行手动获取相应的进程名称并使用类似的工具来执行此操作kill
,pkill
或者killall
能够以类似于使用该xkill
工具单击窗口的方式以图形方式执行此操作会很好。
应用
我会发现这样的工具非常有用,可以在 CPU 过于“紧张”时以图形方式暂停一些繁重的进程,而不会终止它们并且不会丢失无法保存的数据(例如,对于长时间计算的部分结果)。
您可以使用
xdotool
来允许用户单击一个窗口并获取其进程 ID。然后,您可以使用kill
向该进程发送例如 STOP 或 CONT 信号并以这种方式冻结/解冻它。首先,您可能必须 install
xdotool
,因为它没有预先安装:然后,获取拥有特定窗口的进程的 PID 的命令(可以通过单击鼠标选择)将是:
这将打印数字进程 ID。您可以使用提供它作为参数
kill -STOP
或kill -CONT
暂停并继续所述过程。这可以通过将 PID 存储在一个变量中来简化,就像下面这个小脚本一样,它将被点击的窗口的进程暂停 5 秒:您现在可以将此脚本保存在您的计算机上,例如将其绑定到键盘快捷键。
改进字节指挥官♦ 的回答:
有基于 xdtool 的脚本:https ://github.com/RegisterFault/clickstop
优点是它将暂停整个进程树,例如暂停多进程 chrome 或 firefox。