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).