stderr in Farbe

Kamikaze

Warrior of Sunlight
Teammitglied
Kennt jemand eine Möglichkeit dafür zu sorgen, dass tcsh Ausgaben auf stderr in rot darstellt?
 
Code:
( perl -e 'print STDOUT "STDOUT\n"; print STDERR "STDERR\n"' > /dev/tty ) | & sed 's/^\(.*\)$/^[[1;31m\1^[[0m/'

Erklärung dazu:
  1. Das Perl-Skript schreibt einmal in stdout und stderr. Dann gibt es eine gebastelte Umleitung, so dass beim "sed" nur noch der stderr ankommt.
  2. Die Escape-Sequenzen muss man folgendermaßen eintippen:
    Für das "^[" (kommt 2x vor im zweiten Teil der s-Anweisung) tippt man "Strg+V" und dann Escape. Achtung! Es folgt dann wirklich noch ein einfaches "[". Das erste gehört noch zum Escape. Das sieht man, wenn man es tatsächlich getippt hat.
  3. Erste Escape-Sequenz setzt rote Schrift. Die zweite setzt Standardfarbe.


Ich hoffe, dass es so richtig ist. Ich habe es nicht ausgiebig getestet.
 
Ich meine dauerhaft, ohne irgendwas einzutippen. Das der stderr von jedem Programm rot gezeichnet wird, wie in der Eclipse-Konsole.

Ich stelle mir so etwas wie set errcolor red in der .cshrc vor.
 
Zurück
Oben