Moin,
ich habe ein Skript, was recht oft ein echo $Text > /dev/tty$nr macht.
Dabei ist die virtuele Konsole tty$nr noch nicht geöffnet. Das ganze funktioniert auch, aber sehr langsam.
Wenn ich nun (z.B. durch openvt -c $nr oder einen entsprechenden getty-Eintrag in der /etc/inittab) die VC öffne, geht es auf einmal ganz schnell, aber dafür gibt es keine Zeilenumbrüche nach den einzelnen echo-Befehlen mehr (und als uneleganten Nebeneffekt habe ich dort eine Shell bzw. einen Loginpromt).
Hat jemand eine Idee wie man das schreiben sowohl schnell als auch richtig formatierend bekommt?
Ciao, Felix.
Wenn ich nun (z.B. durch openvt -c $nr oder einen entsprechenden getty-Eintrag in der /etc/inittab) die VC öffne, geht es auf einmal ganz schnell, aber dafür gibt es keine Zeilenumbrüche nach den einzelnen echo-Befehlen mehr
Ich muss spezifizieren: Der Text des nachfolgenden echo-Befehls wird zwar auf eine neue Zeile geschrieben, aber ohne den Cursor vorher an den Zeilenanfang zu setzen.
Jemand eine Idee woran das eine (langsames schreiben auf nicht vorher geöffnetes /dev/tty) und das andere (kein Cursorrücklauf bei schreiben auf bereits geöffnetes /dev/tty) liegen könnte?
Ciao, Felix.
Hallo Felix,
Hast Du mal probiert gezielt
echo -e und -n und \n und \f und \r einzusetzen?
(man echo)
mit stty kannst Du evtl. die Ausgabegeschwindigkeit manipulieren. Mir schein so, also wenn im ausgeloggten Zustand 9600 eingestellt ist. Wenn man eingeloggt ist steht, bei mir zumindest, sowas da:
$ stty speed 38400 baud; line = 0; -brkint ixoff -imaxbel -iexten
HTH, Bert
Moin,
Hast Du mal probiert gezielt
echo -e und -n und \n und \f und \r einzusetzen?
Ja, das tut's. Ein explizites echo -ne 'text\n' hat schon gereicht (aber warum macht er kein Rücklauf bei echo 'text'?? komisch...)
D.h. ich lasse auf betreffender Konsole jetzt einfach ein getty laufen und manipuliere die echo-Befehle.
mit stty kannst Du evtl. die Ausgabegeschwindigkeit manipulieren. Mir schein so, also wenn im ausgeloggten Zustand 9600 eingestellt ist. Wenn man eingeloggt ist steht, bei mir zumindest, sowas da:
$ stty speed 38400 baud; line = 0; -brkint ixoff -imaxbel -iexten
Nee, nix geholfen. Ist eh viel langsamer als 9600, und hängt zudem von der Rechnergeschwindigkeit ab (auf meinem großen geht's schneller).
Ciao, Felix.
lug-dd@mailman.schlittermann.de