是否有可编程的方式来判断屏幕是否被锁定?

Dav*_*oby 9 gnome crontab programming screensaver

我的 crontab 中有很多东西,包括一些与我的屏幕对话的东西。如果我不在那里通知它,我真的不希望它运行。

有没有办法可以检查计算机是否已锁定,以便在我不在办公桌前时可以防止它执行任何操作?或者,当我不在办公桌旁时才做其他事情?

Ste*_*zzo 11

运行此命令:

gnome-screensaver-command -q | grep "is active"
Run Code Online (Sandbox Code Playgroud)

如果有任何输出,则屏幕被锁定。

在 shell 脚本中,您可以使用这样的子句:

if (gnome-screensaver-command -q | grep "is active");
then
    ...
fi
Run Code Online (Sandbox Code Playgroud)

(感谢 DoR,他最初在这里发布了这些命令

  • 当您在测试中使用 `grep` 时,最好使用 `grep -q` 以便没有输出到控制台。括号也是多余的——它们会导致创建一个子外壳,尽管在这种情况下不需要。 (3认同)
  • 你不说“谢谢”,而是点赞,并把它标记为“接受的答案”,当你很好的时候,拜托。:) (2认同)