GNU/Linux >> Znalost Linux >  >> Linux

Zjistit, zda je klávesa stisknuta ze skriptu?

Chtěl bych zjistit, zda je při spouštění skriptu stisknuta klávesa. Mám následující skript:

#!/bin/bash
sleep 0.5
xte 'str sometext'

Spouštím tento skript pomocí zkratky pro vložení „nějakého textu“ tam, kde jsem v kde. Použil jsem zde sleep 0.5, protože samotný skript se spouští pomocí zkratky, která používá ctrl a alt. Pokud je vynechán režim spánku 0,5, výsledkem je, že ctrl +s , ctrl +o , atd… je odesláno. Myslím, že řešením by bylo přidat nějaké rušné čekání na začátku, které by se zablokovalo, dokud nebudou stisknuty žádné klávesy. Jak mohu zajistit, aby to fungovalo ve skriptu?

Přijatá odpověď:

Protože stejně používáte xte, proč neuvolnit klíče pomocí xte? Něco ve smyslu

xte "keyup Control_L"
xte "keyup l"

(za předpokladu, že vaše zkratka je ctrl-l).


Linux
  1. Nejlepší způsob, jak zjistit (ze skriptu), zda je software nainstalován?

  2. Jak zjistit, zda je Shell řízen z Ssh?

  3. Ssh – předávání hesel do skriptu?

  1. Jak spouštět skripty Pythonu ze shellu

  2. Spusťte bash skript z adresy URL

  3. Spusťte shell skript v novém terminálu z aktuálního terminálu

  1. MYSQL se liší výstupem ze skriptu

  2. návratová hodnota z python skriptu do shell skriptu

  3. Spusťte skript odkudkoli