Ich habe einen Befehl, der eine Ausgabe in Farbe erzeugt, und ich möchte ihn in eine Datei umleiten, deren Farbcodes entfernt wurden. Gibt es einen Befehl, der funktioniert, cataußer dass er Farbcodes entfernt? Ich habe vor, so etwas zu machen:
$ command-that-produces-colored-output | stripcolorcodes > outfile
cat- Schnelltest, den ich ausgeführt habe, grep --color=auto myusername /etc/passwdgibt mir meinen Benutzernamen in rot mit weißem Text an anderer Stelle. grep --color=auto myusername /etc/passwd | catgibt mir einfachen weißen Text
grep --color=autokeine farbige Ausgabe erzeugt wird, wenn die Standardausgabe kein Terminal ist. Ich spreche von einem Befehl, der bedingungslos Farbcodes ausgibt. (Wie Alex oben ausführt, ist ein solches Verhalten wahrscheinlich ein Fehler, aber manchmal müssen wir mit unvollständiger Software arbeiten, die wir nicht einfach selbst beheben können, und darum geht es in dieser Frage.)
isatty(stdin)vorher überprüft . Möchten Sie mitteilen, was das für ein Programm ist?