如何告诉 Firefox 从 tty1 彻底关闭?

如何告诉 Firefox 从 tty1 彻底关闭?

最近,我几乎完全在我的一台 Debian 笔记本电脑(运行测试)上运行 Firefox。偶尔(~每月)我的桌面/tty7 挂起,在这种情况下我通常可以转到 tty1 和sudo shutdown -[whatever] now.不幸的是,这不会导致 Firefox 像我希望的那样干净地关闭:特别是,当我在操作系统重新启动后将其恢复时,我必须恢复崩溃的会话。这通常不是问题,但有时是问题。

ISTM,对于这个用例,我应该能够从 tty1 说出一些内容(在关闭之前)来告诉 Firefox 彻底关闭。我知道告诉 Emacs 什么,但不告诉 Firefox 什么。这个怎么做? FWIW,以下内容不起作用:

  1. killall -HUP firefox1

当我在(bash 终端@)tty1 中执行此操作并转到 tty7 时,Firefox 确实消失了。但是当我重新启动 Firefox(在 tty7 中)时,Firefox 会出现对话框 title=Session Manager - Restore after Crash并提供崩溃的会话。

  1. killall -SIGHUP $(pidof firefox)

(注:我$()用反引号代替了候选人回答如下为了让 Markdown 开心,但是当我从 tty1 运行时,我使用了反引号,尽管我很确定bash不在乎。)这对我来说根本不起作用,但我不确定为什么:当我执行以下操作时在 tty1 中,

$ killall -SIGHUP `pidof firefox`
24586: no process found
$ pidof firefox
24586
$ pgrep -l firefox
24586 firefox

...然后转到tty7,Firefox 仍然在那里。

  1. pkill -HUP firefox

结果与上面的 item#=1 相同。

答案1

Killall -HUP firefox 应该优雅地做到这一点。

答案2

以下命令将解决您的问题:

killall -SIGHUP `pidof firefox`

但是你的tty7使用一个月后就死机了怎么办?我建议不要重新启动或关闭

sudo sh -c 'echo 3 > /proc/sys/vm/drop_caches'

这将删除操作系统缓存,从而为应用程序释放更多内存。

答案3

另外一个选择:

wmctrl -c "Mozilla Firefox"

或者

wmctrl -c "Firefox"

参考:https://linux.die.net/man/1/wmctrl

相关内容