从终端退出 Google Chrome

从终端退出 Google Chrome

除了使用之外,还有其他方法可以google-chrome从终端退出吗killall google-chrome
我希望能够从脚本关闭它而不杀死它。

答案1

此命令在所有窗口管理器中正常退出 chrome 进程树:

pkill --oldest chrome

或者如果您愿意:

/usr/bin/pkill --oldest --signal TERM -f chrome    

细节:

  • 优雅地表示:避免看到“Google Chrome 浏览器未正确关闭。下次 chrome 启动时重新...”
  • chrome浏览器(例如版本39.0.2171.95)陷阱并优雅处理SIGTERM
  • 发出单个进程的信号,即 chrome 进程树的根,因此--oldest
  • SIGTERM与 signal 相同15,因此--signal TERM,或者直接将其省略,因为SIGTERM是默认信号
  • wmctrl适用于 Unity 和其他一些窗口管理器,但不适用于所有窗口管理器
  • wmctrl -c一次关闭一个窗口,因此要关闭所有 chrome 窗口,您需要类似的东西while wmctrl -c 'Google Chrome'; do sleep 0.2; done

答案2

也许wmctrl可能会有一些帮助。您可以使用-c优雅地关闭窗口的选项:

wmctrl -c chrome

该字符串chrome与窗口标题相匹配。请注意,如果弹出一些消息(例如,当您打开多个选项卡时),窗口可能不会关闭。

答案3

这对我有用:

killall --quiet --signal 15 -- chrome

请注意,我使用了一个相当详细的命令来保持代码中的可读性,当然您也可以发出:

killall -q -15 chrome

答案4

尝试:

kill -3 <pid_of_chrome>

这将向 chrome 发送一个“QUIT”信号,根据您的窗口管理器,该信号通常是在要求关闭时发送的信号。

相关内容