如何从终端锁定屏幕?

如何从终端锁定屏幕?

我正在使用 Ubuntu 12.04。有没有办法通过终端命令或脚本锁定屏幕或会话?

答案1

简单的:

gnome-screensaver-command -l

如果屏幕保护程序设置为激活时锁定(请参阅屏幕保护程序设置),则以下操作也可以起作用,因为该命令会激活屏幕保护程序:

gnome-screensaver-command -a

.bashrc您可以通过编辑主目录中的文件(或.bash_aliases)为命令添加别名:

gedit $HOME/.bashrc

并添加以下行:

alias lock='gnome-screensaver-command -l'

然后从终端:

source .profile

这将激活别名。从现在开始,lock终端中的别名将具有锁定屏幕的效果。

答案2

除了 January 所说的内容之外,以下方法也有效:

gnome-screensaver-command --lock

或者

gnome-screensaver-command -l

根据gnome-screensaver-command手册页...

-l, --lock                 Tells the running screensaver process to lock the screen immediately
-a, --activate             Turn the screensaver on (blank the screen)

为了进一步说明,这里是另一个问题/答案(也是一月份的),描述了调用锁和激活屏幕保护程序之间的区别:

gnome-screensaver-command -a 和 gnome-screensaver-command -l 之间的区别

答案3

从 Ubuntu 14.04 开始,Unity 的锁定屏幕不再使用 gnome-screensaver。该命令gnome-screensaver-command -l在大多数情况下仍可行,但请参阅此问题有例外情况。

如果该命令不起作用(例如,未安装 gnome-screensaver),则可以通过终端中的以下命令调出正确的 Unity 锁定屏幕(而不是可以切换用户的欢迎屏幕):

dbus-send --type=method_call --dest=org.gnome.ScreenSaver /org/gnome/ScreenSaver org.gnome.ScreenSaver.Lock

答案4

$!(sleep 10s ;  xset dpms force suspend) & xdg-screensaver lock

这将以锁定模式启动屏幕保护程序,然后将显示器置于待机状态。简洁明了,无需 sudo。命令行或 shell 脚本工作正常。我将其用作键盘热键。Ubuntu Mate 15.10

相关内容