これについては、@pbm によるすばらしい投稿が Unix SE サイトにあります。
つまり、最初に xinput list
を使用します マウスのデバイス ID を取得し、
xinput --set-prop [ID#] "Device Enabled" "0"
そして
xinput --set-prop [ID#] "Device Enabled" "1"
マウスを無効にして有効にします。
ここでは、マウスを無効にしてから xset dpms force standby
を呼び出して、これらをテストしました。 .マウスを数秒間振っても画面が乱れることはありませんでしたが、1 つのキーを押すと問題なく動作しました。 2 番目のコマンドを使用すると、デフォルトの起動スクリプトで設定された「一定の減速」設定を含め、マウスが通常の状態に戻りました。
これら 2 つのコマンドを -startCmd
に渡すことができるはずです。 と -endCmd
xlock
のオプション あなたが求めているものを手に入れるために。
Ubuntu では次のようにします:
#!/bin/bash
# allow only one instance
r=$(pidof -x -o $$ ssmonoff.sh)
set -- $r
if [ "${#@}" -ge 1 ]; then
echo "Script already running. Exit..."
exit
fi
dbus-monitor --session "type='signal',interface='org.gnome.ScreenSaver'" | ( while read line; do
if echo $line | grep "boolean true" &> /dev/null; then
xinput --set-prop "Dell Premium USB Optical Mouse" "Device Enabled" "0"
xset dpms force off
else
xinput --set-prop "Dell Premium USB Optical Mouse" "Device Enabled" "1"
fi
done )
いくつかのメモ:
- モニターも強制的にオフにします。
- ID ではなく氏名を使用することをお勧めします。
これがお役に立てば幸いです。