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, cat
auß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/passwd
gibt mir meinen Benutzernamen in rot mit weißem Text an anderer Stelle. grep --color=auto myusername /etc/passwd | cat
gibt mir einfachen weißen Text
grep --color=auto
keine 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?