Tastendruck Linux simulieren

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
markjohannes
User
Beiträge: 29
Registriert: Dienstag 24. April 2018, 22:04

Hallo Zusammen
Ich möchte über ein Python-Script die Tasten STRG ALT und F1 gleichzeitig drücken, so dass ich in die erste Konsole wechsle.
Finde im Internet leider nur Befehle für Windows:(
Freue mich auf eure Antworten:)

LG Johannes
jerch
User
Beiträge: 1669
Registriert: Mittwoch 4. März 2009, 14:19

@markjohannes:
Schau mal, ob Du mit https://github.com/SavinaRoja/PyUserInput weiterkommst.

Unter Linux ist das nicht leider nicht ganz so trivial, da es vom eingesetzten Grafikserver (meist X11) und dessen angebotenen Möglichkeiten abhängt.
markjohannes
User
Beiträge: 29
Registriert: Dienstag 24. April 2018, 22:04

Vielen Dank für deine schnelle Antwort. Ich weiß allerdings nicht, was beim import ein punkt vor dem paket bedeutet. Python kann .base nicht finden. Gibt es keine vorgefertigete Klasse so wie beispielsweise pyautogui für die Maus?
Piet Lotus
User
Beiträge: 80
Registriert: Dienstag 14. November 2006, 10:40

Hallo Johannes,
wenn du mittels eines Python Skripts das gleichzeitige Drücken der Tasten CRTL, ALT und F1 unter Linux simulieren möchtest, um in die erste Konsole zu wechseln kannst du PyAutoGUI nutzen.

Code: Alles auswählen

import pyautogui
pyautogui.hotkey('ctrl', 'alt', 'f1')
Hoffe, das hilft.
Viele Grüße
Piet Lotus
markjohannes
User
Beiträge: 29
Registriert: Dienstag 24. April 2018, 22:04

Vielen Dank. Hat perfekt funktioniert:)
Schönen Abend noch

LG Johannes
markjohannes
User
Beiträge: 29
Registriert: Dienstag 24. April 2018, 22:04

Eine Frage hätte ich doch noch. Und zwar gibt es eine Möglichkeit, automatische eingaben auf den Konsolen 1-6 (also ohne X-Server) zu machen? Pyautogui braucht einen Display dafür?
Piet Lotus
User
Beiträge: 80
Registriert: Dienstag 14. November 2006, 10:40

Hallo Johannes,
was hast du denn fachlich genau vor?
Warum möchtest du in die Terminals wechseln?
Willst du dich da als anderer User automatisiert anmelden?
Ggf. hilft dir auch pexpect oder subprocess weiter?
Viele Grüße
Piet Lotus
markjohannes
User
Beiträge: 29
Registriert: Dienstag 24. April 2018, 22:04

Ja genau. Ich möchte mich als ein anderer User automatisch anmelden. Da ich bisher keine Bash-Lösung dafür gefunden habe, suche ich nach einer Möglichkeit, dass Python über pyautogui.hotkey() in die tty1-Konsole wechselt und dort den Benutzernamen tippt, dann ENTER drückt und dann das Passwort tippt. Wenn soetwas ohne Bildschirm (X-Server) möglich ist.

LG Johannes
__deets__
User
Beiträge: 14494
Registriert: Mittwoch 14. Oktober 2015, 14:29

Und was soll der andere User machen? Es gibt für sowas viel einfachere Möglichkeiten zb mit sudo. Erzähl doch mal etwas ausführlicher was du da vorhast.
markjohannes
User
Beiträge: 29
Registriert: Dienstag 24. April 2018, 22:04

Ich möchte, dass der PowerButton keine Funktion mehr hat. Da ich nur weiß, wie ich in außer Funktion setzte, wenn ich im Terminal bin, möchte ich auf Befehl über SSH in tty1 wechseln. Da ich über ssh dort keine Eingabe machen kann, muss ich über ein Script automatisch eingeloggt werden. Dort soll dann nur ein Bild angezeigt werden. Dazu schalte ich die Tastatur ab, sodass man keine Möglichkeit hat, das Bild weg zubekommen. Wenn ich das z.b. auf KDE anzeigen ließe, könnte man den reboot Button drücken, und so das Bild umgehen.

LG Johannes
__deets__
User
Beiträge: 14494
Registriert: Mittwoch 14. Oktober 2015, 14:29

Das war jetzt etwas wirr. Möchtest du einen Kiosk-Modus programmieren, bei dem Benutzer das System nur eingeschränkt benuzten können? Und dieses System via SSH warten?

Und wenn du eine Kommandozeile hast, dann brauchst du dafür kein Terminal. Du kannst einfach das subprocess-Modul benuzten.
markjohannes
User
Beiträge: 29
Registriert: Dienstag 24. April 2018, 22:04

Ich möchte einfach nur wissen, ob es eine Möglichkeit mit Python gibt, auf tty1 automatische Eingaben zu machen.
LG Johannes
__deets__
User
Beiträge: 14494
Registriert: Mittwoch 14. Oktober 2015, 14:29

Wenn du meinst. Viel Erfolg.
narpfel
User
Beiträge: 643
Registriert: Freitag 20. Oktober 2017, 16:10

@markjohannes: Ich glaube, dass du hier ein xy-Problem hast und deshalb keine hilfreichen Antworten bekommst. Du müsstest uns verraten, warum du auf `tty1` wechseln möchtest, wenn du das Problem lösen möchtest.
jerch
User
Beiträge: 1669
Registriert: Mittwoch 4. März 2009, 14:19

markjohannes hat geschrieben: Sonntag 13. Mai 2018, 14:04 Ich möchte einfach nur wissen, ob es eine Möglichkeit mit Python gibt, auf tty1 automatische Eingaben zu machen.
LG Johannes
Theoretisch geht das (per /dev/console), praktisch nein (da es Sicherheitsmechanismen aushebeln, quasi kernelnah operieren müsste). Auch klingt es komisch, dass der Powerbutton nur auf einer Systemkonsole deaktivierbar sein soll. Warum geht das denn nicht in xterm oder einem anderen grafischen Terminal? Zeigt doch mal, was Du auf ALT+F1 dann machst.
Antworten