Farben bewahren mit watch -n

429
The Baron

ich renne

watch tail -n 15 20151217.log 

und meine Ausgabe sieht aus wie

12-17 04:42:52 DEBUG [31mXYZT 10 91.5[0m 

Stattdessen möchte ich es als farbigen Text sehen. Was kann ich machen?

Ich möchte nicht einfach tail -n verwenden, weil es irgendwie Linien und Stände überspringt.

Irgendwelche Ideen?

1
Auch relevant: Viele Programme deaktivieren die Farbgebung (`--color = auto` oder ähnliches), wenn sie feststellen, dass die Ausgabe umgeleitet wird. Daniel B vor 8 Jahren 0

1 Antwort auf die Frage

0
Thomas Dickey

Die Handbuchseite für watchlistet diese Option auf:

 -c, --color Interpret ANSI color and style sequences. 

Sie könnten also Ihren Befehl ändern

watch -c tail -n 15 20151217.log 

und sehen die Farbe wie beabsichtigt.

Bei der Vorbereitung der Antwort habe ich mit Debian 7 getestet, das procps-ng verwendet . Scientific Linux verwendet eine ältere Version von procps (die Menge der enthaltenen Programme watch). Debian verwendet die neuere Version, die auf der Handbuchseite zitiert wird. Als Referenz verwendet Scientific Linux 6 die "neueste" Version aus dem SourceForge-Projekt, die hier vor einigen Jahren gegründet wurde . Die Historie von watch.c und watch.1 zeigt, dass die Farboption 2011 in procps-ng hinzugefügt wurde .

Die ältere Version von procps kann keine Escape-Sequenzen filtern.

Ich habe einen wissenschaftlichen Linux. watch --c tail -n 15 20151218.log watch: nicht erkannte Option '--c' Verwendung: watch [-dhntv] [--differences [= kumulativ]] [--help] [--interval =] [--no-title] [--version] The Baron vor 8 Jahren 0