PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : [ERLEDIGT] Python Konsolenausgabe auf tty2



Kampi
19.05.2013, 15:31
Heyho,

weiß einer zufällig wie ich es schaffe eine Konsolenausgabe beim Raspberry Pi auf einen zweiten oder dritten Konsolenbildschirm auszugeben?
Danke schon mal!

AsuroPhilip
19.05.2013, 18:05
Hey,

hm.. vielleicht schreibst du, dass was du ausgeben willst, in eine Datei und lässt sie in der anderen Konsole kontinuierlich anzeigen ?

ichbinsisyphos
19.05.2013, 19:32
Was auf alle Fälle funktioniert, ist "/dev/tty2" als file zu öffnen und reinzuschreiben.
Das alte Unix-Motto lautet ja "Alles ist ein file". Linux hält sich bisher ja auch noch größtenteils dran.


filep=open("/dev/tty2","w")

for i in range(10):
filep.write(str(i)+"\n")

filep.close()

Dafür brauchst aber root-Rechte. :(
Keine Ahnung, ob das irgendwie anders geht ...

Kampi
19.05.2013, 19:47
Hey,

ja die Methode hatte ich auch schon gefunden, nur ich wollte wissen ob es nicht auch anders geht :)
Root-Rechte sind eigtl kein Problem, da das Programm zwecks "serial" und "smbus" Modul eh mittels root-Rechten laufen muss :)

ichbinsisyphos
19.05.2013, 20:12
Mir fällt keine andere Möglichkeit ein, aber wegen dem root-Problem ist mir was eingefallen, dazu musst du den gewöhnlichen Benutzer nur den jeweiligen Gruppen hinzufügen.


~$ ls- lh /dev/tty2

crw-rw---- 1 root tty 4, 2 19. Mai 19:29 /dev/tty2
Rechte hat hier root und Benutzer in der Gruppe "tty". Mit root Programme auszuführen ist eines der schlimmsten pfuis die man machen kann, sollte man sich nicht angewöhnen, allerdings wirds am Rasberry Pi wohl wurscht sein.

- - - Aktualisiert - - -

Hab grad was probiert

import sys

sys.stdout = open("/dev/tty2", "w")

print "test"Rechteproblem ist das gleiche. Du würdest aber gern herumschalten und die messages wild auf alle Terminals verteilen?

Kampi
19.05.2013, 20:34
Ne es geht um ein Messprojekt mit dem Raspberry.
Ich wollte es so machen, dass auf tty1 die Standardeingaben stattfinden, auf tty2 werden Sensormesswerte angezeigt und auf tty3 werden dann Eingaben eingegeben.

ichbinsisyphos
20.05.2013, 14:26
Dann passt sys.stdout umstellen eh, oder? Das selbe geht anscheinden auch mit sys.stdin und std.err - im Hinblick auf die anderen geplanten Eingabefunktionen.

Kampi
21.05.2013, 11:53
Hey,

danke für den Hinweis.
Ich beschäftige mich mal damit und gucke ob es so klappt :)

snafu
09.07.2013, 05:26
Moin,

Ich löse mir gerade ein verwandtes Problem, indem ich mit einem vierfach-Multiplexer einfach die eine serielle Schnittstelle auf vier erweitere (und zwischendrin sogar noch die Baudrate wechsle)

Eingaben an den RasPi dürfen zwischendrin dann natürlich nicht ausgewertet werden müssen...