Wie bekomme ich eine Pipe-Ausgabe in Farbe?

325
Lexib0y

Ich benutze FreeBSD mit der csh-Shell. Als Beispiel bekomme ich im Terminal / Bildschirm eine Farbausgabe für ls (zB ls -lGs). Aber wenn ich mehr durchlade (zB ls -lGs | more), hat die Ausgabe keine Farbe. Gibt es eine Möglichkeit, mehr Anzeigefarbe zu haben?

1
In Ubuntu hat "ls" die Option "--color" und "ls --color = always" behält die Färbung, wenn die Ausgabe umgeleitet wird. AFH vor 7 Jahren 0
Sie bringen mich auf die richtige Spur, ich werde eine Antwort für die Community geben. Lexib0y vor 7 Jahren 0

1 Antwort auf die Frage

1
Lexib0y

Ich habe das Problem in zwei Schritten gelöst.

Zuerst habe ich die Umgebungsvariable CLICOLOR_FORCE in .cshrc gesetzt, um die Ausgabe anders als TERM zu erzwingen, auch Farben zu verwenden, zB:

CLICOLOR_FORCE 1 

more hat eine Befehlszeilenoption -R zur Ausgabe von Farbsequenzen.

 -R or --RAW-CONTROL-CHARS Like -r, but only ANSI "color" escape sequences are output in "raw" form. Unlike -r, the screen appearance is maintained cor- rectly in most cases. ANSI "color" escape sequences are sequences of the form: 

Diese beiden zusammen haben mir die gewünschten Ergebnisse gebracht

ls -lGs | more -R 

zeigt nun die Ausgabe in Farbe an.

Ich bin froh, dass Sie eine Lösung gefunden haben: Ihre Antwort funktioniert nicht mit meiner Konfiguration von Ubuntu / `bash` mit GNU` ls`. Dies ist jedoch ein weiter Weg von FreeBSD / `csh`, also nicht überraschend. In meinem Fall hat "more" keine "-R" -Option, aber es geht auch ohne. AFH vor 7 Jahren 0
Soll ich der Frage den FreeBSD-Tag hinzufügen? Es könnte auf anderen Systemen funktionieren ... Ihre Fragen und Antworten sollten klar genug sein. Lexib0y vor 7 Jahren 0
Ich bin nicht sicher, was ich raten sollte: Ich habe auf anderen Systemen auf `CLICOLOR_FORCE` hingewiesen, und meine Kommentare sollten helfen, wenn Ihre Lösung nicht funktioniert. Ich habe keine Ahnung, wie viele Leute auf diese Lösung stoßen werden, indem sie nach dem Tag und nicht nach dem Titel suchen, aber ich vermute nicht viele. AFH vor 7 Jahren 0