Tastatureingaben auf dem grafischen Desktop simulieren
Verfasst: Mo 12. Okt 2015, 21:39
Einleitung
Tastatureingaben per Script auszuführen, kann auf dem Pi (oder ähnlichen Mini-Computern) sehr interessant sein, erst recht wenn man dies über wie in meinem Fall über die GPIOs ausführen möchte.
Vorab: In diesem Tutorial wird nur der reine Bash-Befehl behandelt und nicht die Ausführung per GPIO!
Vorbereitung
Damit wir den grafischen Desktop im Script erreichen können, muss eine Änderung in der lightdm.conf Datei durchgeführt werden:
Die gesuchte Zeile beginnt mit xserver-command= und muss auf folgenden Wert gesetzt werden:
Um die Tastatureingabe zu simulieren, wird das Programm xautomation benötigt:
Scripting
Nun sind alle benötigten Komponenten installiert/angepasst und können nun verwendet werden.
Hierzu ein kurzes Script-Beispiel für die Simulation von der Tastatureingabe Alt + F4.
Wichtig hierbei ist, dass die Groß- und Kleinschreibung beachtet wird!
Zusammenfassung:
Tastatureingaben per Script auszuführen, kann auf dem Pi (oder ähnlichen Mini-Computern) sehr interessant sein, erst recht wenn man dies über wie in meinem Fall über die GPIOs ausführen möchte.
Vorab: In diesem Tutorial wird nur der reine Bash-Befehl behandelt und nicht die Ausführung per GPIO!
Vorbereitung
Damit wir den grafischen Desktop im Script erreichen können, muss eine Änderung in der lightdm.conf Datei durchgeführt werden:
Code: Alles auswählen
sudo nano /etc/lightdm/lightdm.conf
Code: Alles auswählen
xserver-command=X -s 0 dpms :0
Code: Alles auswählen
sudo aptitude update
sudo aptitude install xautomation
Nun sind alle benötigten Komponenten installiert/angepasst und können nun verwendet werden.
Hierzu ein kurzes Script-Beispiel für die Simulation von der Tastatureingabe Alt + F4.
Wichtig hierbei ist, dass die Groß- und Kleinschreibung beachtet wird!
Code: Alles auswählen
#!/bin/sh
echo keydown Alt_L | xte -x:0
echo key F4 | xte -x:0
echo keyup Alt_L | xte -x:0
- Keydown = Dauerhaftes drücken der übergebenen Taste (Gilt auch nach beenden des Scripts! Daher unbedingt den Keyup Befehl vor Ende des Scripts verwenden!).
- Keyup = Hebt das dauerhafte Drücken der übergebenen Taste auf.
- Key = Drücken und loslassen der übergebenen Taste.
Code: Alles auswählen
xte --help