检测 rc.lua 中是否正在重新启动 awesome

检测 rc.lua 中是否正在重新启动 awesome

我希望在 awesome 启动时运行某些程序,但不是每次启动时都运行它重新开始它。有什么方法可以检测这种情况吗?我正在 Mate、Linux Mint 16 下运行它,如果这有帮助的话。

答案1

出色的支持信号,尤其是exit信号,它可以让您检测 awesome 是否正在重新启动。也许您可以使用它。

也许更简单的方法是使用以下方法:

awful.util.spawn_with_shell("pgrep program || program")

pgrep program部分首先检查是否已有此程序的某个实例正在运行。如果没有,则执行该程序。当然,如果您希望程序在多个本地运行的 X 服务器上运行,或者程序已启动,则此方法不起作用。

spawn_with_shell还处理一些其他参数,这些参数不是必需的,但如果您有兴趣,可以在这里找到它们:

http://awesome.naquadah.org/doc/api/modules/awful.util.html#spawn_with_shell

相关内容