我正在尝试创建一个小脚本,以便在锁定计算机屏幕时设置随机消息。
所以我需要能够从命令行定义一条消息,并在执行锁屏功能时调用它。
我找到了锁定屏幕的命令:cinnamon-screensaver-command -l
但是在男人没有关于如何定义锁屏消息的详细信息。
如果您有一些想法...
答案1
cinnamon-screensaver-command 现在有一个“-m”或“--away-message”选项,因此您可以使用它。我有一个小的 shell 脚本,内容如下:
#!/bin/sh
cinnamon-screensaver-command -l -m $(fortune -s)
答案2
Cinnamon 屏幕保护程序提供了 DBus 服务org.cinnamon.ScreenSaver
,其中包括以下方法:
method void org.cinnamon.ScreenSaver.Lock(QString body)
此方法正是使用自定义消息锁定屏幕时调用的方法。如果您想从 bash 脚本调用此方法,则需要一个 DBus 前端,例如 gdbus 或 qdbus。
我个人更喜欢 qdbus,因为我还不理解 gdbus 的语法。不过,你可能需要先安装 qdbus,方法是:
sudo apt-get install qdbus
这可能还会安装一些其他 Qt 库。安装后,你可以使用以下方法调用该方法:
qdbus org.cinnamon.ScreenSaver / Lock "$message"
包含$message
您的自定义消息。但是,如果屏幕已锁定,则此方法调用将不起作用。如果是这种情况,该方法将阻塞,直到屏幕解锁,然后返回而不重新锁定屏幕。