我希望在 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