• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

Tastendruck simulieren

BluBBkOpf

Newbie
Hi,

gibt es eine Möglichkeit bzw. irgendeinen Befehl unter Linux einen Tastendruck für die Shell zu simulieren? Wie nennt sich das Programm dazu, falls es soetwas gibt? :)

MfG BluBBkOpf
 
A

Anonymous

Gast
hi;-)
meinst du aktion bei beliebiger taste ?
-----------------------------
echo "weiter mit beliebiger taste"
old_tty_setting=$(stty -g)
stty -icanon -echo
key=$(dd bs=1 count=1 2> /dev/null)
stty "$old_tty_setting"
----------------------------

Mƒg ®êïñï
 
OP
B

BluBBkOpf

Newbie
Nein, ein Programm, was dem System vorgaukelt, ich hätte eine Taste gedrückt und darauf hin einen Befehl ausführt. Das System soll quasi selbst eine Taste drücken...
Gibts da was dafür?

MfG BluBBkOpf
 
A

Anonymous

Gast
da in LINUX vom Prinzip alle Gerätedateien wie Files behandelt werden, kann man natürlich leicht fasst jedes Gerät durch ein anderes oder eine Simulation ersetzen. Mit der Tastatur geht das besonders gut. Hier mal ein Beispiel wie man statt von Tastatur die Eingaben aus einer File lesen kann.

lege zum Beispiel mal eine File test1 an.
Code:
cd
ls -l
cd /tmp 
ls -l
echo ende der Simulation
exit

jetzt gehst du einfach auf ein Terminal und gibst dort ein
Code:
 <test1 bash
und schon öffnet sich eine Bash, aber es werden keine Eingaben von der Tastatur erwartet sondern die Eingaben aus der File test1 genommen und somit der Reihen nach abgearbeitet. Funktioniert also genaus so wie ein script.

Wenn du also zB in einem Script die Eingabe eines Zeiches simulieren willst, dann biege einfach die Standarteingabe auf ein anderes Gerät oder File um. Um mal bei dem von reini123 verwendeten dd Beispiel zu bleiben zapfen wir doch einfach mal die Maus an.
Code:
</dev/mouse  dd bs=1 count=1
geht aber nur unter root, da als normaler User wirst du wahrscheinlich keinen Lesezugriff auf das Mausdevice haben.
solange die Maus nicht bewegt wird kehrt der Befehl nicht zurück. aber wenn du nur ganz leicht am Tisch wackelst sofort ist der Befehl zurück.
Wenn du jetzt deine Eingabe zB mit stty -icanon sensibilisiert hast, dann kannst du dann </dev/mouse weglassen und dann reagiert der dd Befehl auf den ersten Tastendruck.

robi
 
Oben