Ich färbe den Header einer mit formatierten Tabelle ein column -ts $'\t'
Funktioniert gut ohne Farbcodes, aber wenn ich der ersten Zeile Farbcodes hinzufüge, wird column
die Ausgabe nicht richtig ausgerichtet.
Ohne farbige Ausgabe funktioniert es wie erwartet :
printf "1\t2\t3\nasdasdasdasdasdasdasd\tqwe\tqweqwe\n" | column -ts $'\t'
Wenn Sie jedoch Farbe in die Spalte der ersten Zeile einfügen, wird der Text der farbigen Zeile nicht ausgerichtet:
printf "\e[7m1\t2\t3\e[0m\nasdasdasdasdasdasdasd\tqwe\tqweqwe\n" | column -ts $'\t'
Beobachtet dieses Verhalten sowohl unter Ubuntu Linux als auch unter Mac OS X.
quelle
Ja, das liegt daran, dass die Farbcodes auch von formatiert werden
column
. Sie sind Charaktere wie alle anderen. Da Sie es jedoch bereits verwendenprintf
, können Sie es auch verwenden, um die Formatierung für Sie vorzunehmen:Alternativ können Sie die Farbcodes hinzufügen, nachdem Sie Folgendes verwendet haben
column
:quelle
column
column
Befehl sie entfernt.column
weil einige Spalten eine dynamische Breite haben.column
Gute Idee, Farben nach der Verwendung von 👍 hinzuzufügen