スクリプトの実行中にキーが押されているかどうかを検出したいと思います。次のスクリプトがあります:
#!/bin/bash
sleep 0.5
xte 'str sometext'
ショートカットを使用してこのスクリプトを実行し、kdeで「sometext」を貼り付けます。スクリプト自体はctrlとaltを使用するショートカットで実行されるため、ここではsleep0.5を使用しました。 sleep 0.5を省略すると、結果は ctrlになります。 + s 、 ctrl + o 、など…が送信されます。解決策は、最初に忙しい待機を追加して、キーが押されなくなるまでブロックすることだと思います。これをスクリプトで機能させるにはどうすればよいですか?
承認された回答:
とにかくxteを使用しているので、xteでキーを離してみませんか?線に沿った何か
xte "keyup Control_L"
xte "keyup l"
(ショートカットがctrl-lであると仮定します。)