![退出特定的 GUI 应用程序并显示“保存更改”对话框](https://linux22.com/image/907870/%E9%80%80%E5%87%BA%E7%89%B9%E5%AE%9A%E7%9A%84%20GUI%20%E5%BA%94%E7%94%A8%E7%A8%8B%E5%BA%8F%E5%B9%B6%E6%98%BE%E7%A4%BA%E2%80%9C%E4%BF%9D%E5%AD%98%E6%9B%B4%E6%94%B9%E2%80%9D%E5%AF%B9%E8%AF%9D%E6%A1%86.png)
ps aux | grep -i office | awk {'print $2'} | xargs kill
我可以使用上述命令来终止 LibreOffice,但它会突然终止该进程。但我希望以与关闭系统时相同的方式执行此操作。因此,它会询问我是否要在关闭对话框之前保存任何更改。
编辑:我正在构建一个工具,需要在其中终止正在运行的其他进程。因此我想知道如何为这些应用程序提供正常关闭的机会。
答案1
任何POSIX 信号您可以发送将立即关闭应用程序。
您可以使用wmctrl
:
wmctrl -c LibreOffice
用于-F
严格搜索。
笔记
- 非常类似于我如何终止特定的 X 窗口
- 您也可以尝试和
xdottool
- 要关闭特定窗口,您可以列出它们
wmctrl -l
,然后使用 将其关闭wmctrl -ic ID
。 - 警告:如果进程卡住,它可能不会注意到您关闭了窗口。窗口将消失,但进程仍会存在,并可能消耗 CPU 和 RAM。