シェルスクリプトで特定のキーが押されたことを確認する

シェルスクリプトで特定のキーが押されたことを確認する

バックグラウンドで実行されているシェルスクリプトで特定のキーが押されたことを確認する方法はありますか?キーまたは2つまたは3つのキーの組み合わせを押すと、すぐに曲のプレイリストを再生する必要があるシェルスクリプトを実行するとします。シェルスクリプトはcrontabに追加されるため、端末では実行されません。では、このシェルスクリプトで押されたキーをキャプチャすることは可能ですか?

ベストアンサー1

あなたの要求は明確ではありません。しかし、私が正しく理解したら、まず試してみることをお勧めしますautokey-gtk。事前定義されたキーセットを押すたびに実行されるスクリプトをPythonとして作成できるPythonベースのアプリケーション。これがあなたの要件に合っていることを確認してください。

まあ、手動で実行したい場合は、基本的に2つの方法があります。

解決策#1:キーロギング方法

キーボードのキーストロークを記録し続け、特定の組み合わせを押したときにイベントを開始するスクリプトを作成できます。レコードキーの場合は、以下のコードを確認できます。パイキーロガー

解決策#2:キーバインダー方法

まず、キーをバインドする方法が必要です。 1つの方法は次のとおりです。キークリップ。または、設定で「キーボードショートカット」を使用して単にキーをバインドすることもできます。特定のキーセットを押すたびに、ホームフォルダ内の一部のXYZファイルにいくつかのテキストを書き込むスクリプトが実行されます。

その後、crontabを使用して起動されたスクリプトは、1秒ごとにこのXYZファイルを読み取ります。ファイルの内容に応じて、スクリプトは別の操作を開始します。

おすすめ記事