画面を強制的に空白にし、キーボードとマウスの操作に関係なく、空白を解除するコマンド(ロックのようなもの)を受け取るまで画面を空白のままにしておきます。
私が知っているコマンドは次のとおりです。
xset dpms force off
sleep 2
xset dpms force on
2秒間だけ空白にしてから空白を解除したいのですが、この2秒間は、何があっても絶対に空白のままにしておきたいです。これはできますか?
承認された回答:
その間、キーボードとマウスを無効にすることができます。まず、キーボードとマウスのIDを取得します:
$ xinput --list
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Logitech M325 id=14 [slave pointer (2)]
⎣ Virtual core keyboard id=3 [master keyboard (2)]
↳ SIGMACHIP USB Keyboard id=11 [slave keyboard (3)]
私は自分のマシンにさまざまなものを接続していて、ラップトップを実行しているので、xinput --list
の出力 とても長いです。わかりやすくするために、ここで編集しました。無効にする必要のあるデバイスのIDを把握する必要があります。私の場合、それらは14
でした および11
。
次に、画面のスイッチを切り、キーボードとマウスを無効にし、2秒待ってから、すべてを再びオンにします。
xinput set-prop 'Logitech M325' 'Device Enabled' 0 &&
xinput set-prop 'SIGMACHIP USB Keyboard' 'Device Enabled' 0 &&
xset dpms force off &&
sleep 2 &&
xinput set-prop 'Logitech M325' 'Device Enabled' 1 &&
xinput set-prop 'SIGMACHIP USB Keyboard' 'Device Enabled' 1 &&
xset dpms force on
私のシステムでは、SIGMACHIP USB
複数のデバイスに一致します。何らかの理由で、マウスとしても識別されます。適切なデバイスを確実に入手するために、クラスの前に名前を付けることができます:
xinput set-prop 'pointer:Logitech M325' 'Device Enabled' 0 &&
xinput set-prop 'keyboard:SIGMACHIP USB Keyboard' 'Device Enabled' 0 &&
xset dpms force off &&
sleep 2 &&
xinput set-prop 'pointer:Logitech M325' 'Device Enabled' 1 &&
xinput set-prop 'keyboard:SIGMACHIP USB Keyboard' 'Device Enabled' 1 &&
xset dpms force on