我经常遇到这样的情况,当我在笔记本电脑前开始思考某些事情时,屏幕锁就会启动 - 当我思考时我往往会冻结:) 然后我必须输入密码来解锁我的会话,然后我会在思考时再次冻结,然后再次重复整个过程:)我想这样我每年都会浪费大约一周的时间;)如果这件事从未发生在你身上,那就向我扔石头吧:)
所以,我想用它rofi -e "The screen is about to lock..."
来显示警告,然后在 10 秒后slock
执行。
我做了一些测试,当我打开两个终端时,我sleep 10; pkill rofi
在其中一个终端中使用,rofi -e "The screen is about to lock..." || slock
在第二个终端中使用。
如果我等待 10 秒,rofi 将被杀死并且 slock 将启动。如果我设法在 10 秒内做出反应并关闭 rofi,slock
则不会运行。
我一直在尝试将此行为放入一个脚本中,该脚本将由xidle
- 现在xidle
仅slock
在 300 秒后执行,但我想在执行之前收到此警告消息slock
- 您介意帮助我实现此结果吗?
预先感谢所有好心人:)
答案1
你可以这样做GNUtimeout
:
timeout 10s rofi -e "The screen is about to lock..." || slock
如果rofi
在十秒内退出,slock
则不会运行(假设rofi
以退出代码 0 退出);否则,timeout
将杀死它并以非零退出代码退出,因此slock
将运行。
答案2
好的,我已经做到了:
rofi -e "The screen is about to lock..." & sleep 10; pkill rofi && slock
这个脚本被调用xidle
。