GNU/Linux >> Tutoriels Linux >  >> Linux

Détecter si la touche est enfoncée à partir du script ?

Je voudrais détecter si une touche est enfoncée lors de l'exécution d'un script. J'ai le script suivant :

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

J'exécute ce script en utilisant un raccourci pour coller "sometext" où je suis dans kde. J'ai utilisé un sleep 0.5 ici parce que le script lui-même est exécuté avec un raccourci qui utilise ctrl et alt. Si le sleep 0.5 est omis, le résultat est que ctrl +s , ctrl +o , etc… est envoyé. Je pense que la solution serait d'ajouter une attente occupée au début qui bloquerait jusqu'à ce qu'aucune touche ne soit enfoncée. Comment puis-je faire en sorte que cela fonctionne dans le script ?

Réponse acceptée :

Puisque vous utilisez de toute façon xte, pourquoi ne pas libérer les clés avec xte ? Quelque chose dans le sens

xte "keyup Control_L"
xte "keyup l"

(en supposant que votre raccourci est ctrl-l).


Linux
  1. Comment exécuter des scripts Python à partir du shell

  2. Exécuter un script shell dans un nouveau terminal à partir du terminal actuel

  3. MYSQL diffère dans la sortie du script

  4. Comment exécuter un script Python à partir de Java ?

  5. valeur de retour du script python au script shell

Exécuter le script bash à partir de l'URL

Exécuter un script Python à partir de PHP

Exécuter Pycharm en tant que root depuis le lanceur

matlab exécute le script à partir de la ligne de commande linux

Abandonner le glisser-déposer à partir d'un programme occupé

Exécutez un script de n'importe où