COLUMN(1) Dienstprogramme fur Benutzer COLUMN(1) BEZEICHNUNG column - Listen in Spalten darstellen UBERSICHT column [Optionen] [Datei ...] BESCHREIBUNG Das Dienstprogramm column formatiert dessen Eingabe in mehreren Spalten. Es unterstutzt drei Modi: fullt Spalten vor Zeilen Dies ist der Vorgabemodus (zwecks Abwartskompatibilitat notwendig) fullt Zeilen vor Spalten Dieser Modus wird durch die Option -x, --fillrows aktiviert. Tabelle erstellen In diesem Modus wird die Anzahl der Spalten der Eingabe ermittelt und eine Tabelle erstellt. Dies wird durch die Option -t/--table aktiviert. Die Ausgabe wird im interaktiven Modus an die Terminalbreite angepasst beziehungsweise ist im nicht-interaktiven Modus 80 Zeichen (siehe --output-width fur weitere Details). Benutzerdefinierte Formatierungen konnen mithilfe verschiedener --table-*-Optionen angewendet werden. Die Eingabe wird aus der angegebenen Datei gelesen oder anderenfalls aus der Standardeingabe. Leere Zeilen werden ignoriert und alle ungultigen Multibyte-Sequenzen werden nach der \x-Konvention kodiert. OPTIONEN Das Argument Spalten fur die folgenden --table--Optionen ist eine durch Kommata getrennte Liste benutzerdefinierter Namen, die mit *--table-columns Name1,Name2*, oder Spaltenindizes, wie sie in der Eingabe erscheinen, beginnend mit 1, oder Namen, die uber ein *--table-column-Attribut definiert wurden. Namen und Indizes konnen gemischt werden. Der spezielle Platzhalter '0' (zum Beispiel -R0) kann verwendet werden, um alle Spalten anzugeben, und '-1' (zum Beispiel -R -1) kann verwendet werden, um die letzte sichtbare Spalte anzugeben. Es ist moglich, Bereiche wie '1-5' zu verwenden, um Spalten uber Indizes zu adressieren. -J, --json verwendet das JSON-Format fur die Ausgabe der Tabelle. Die Option --table-columns ist erforderlich und die Option --table-name wird empfohlen. -c, --output-width Breite formatiert die Ausgabe auf eine Breite, die hier als Anzahl der Zeichen angegeben wird. Beachten Sie, dass eine Eingabe, die grosser als die angegebene Breite ist, standardmassig nicht gekurzt wird. Die Vorgabe ist die Terminalbreite im interaktiven Modus, und 80 Zeichen im nicht-interaktiven Modus. Die Spaltenuberschriften werden niemals gekurzt. Sie konnen den Platzhalter unlimited (oder 0) verwenden, um die Ausgabebreite explizit nicht zu begrenzen. Dies wird dann empfohlen, wenn die Ausgabe in eine Datei erfolgt. (Der ursprungliche lange Name dieser Option war --columns; dieser Name ist seit Version 2.30 veraltet.) -d, --table-noheadings gibt keine Uberschrift aus. Dies ermoglicht Ihnen die Verwendung benutzerdefinierter Spaltennamen in der Befehlszeile, aber blendet die Uberschrift aus, wenn die Tabelle ausgegeben wird. -o, --output-separator Zeichenkette gibt den Spaltentrenner fur die Tabellenausgabe an (standardmassig zwei Leerzeichen). -s, --input-separator, --separator Trennzeichen gibt die moglichen Eingabetrennzeichen an (standardmassig Leerzeichen). -S, --use-spaces Zahl verwendet Leerzeichen anstelle von Tabulatoren, um die Spalten auszurichten, sofern Sie sich nicht im Tabellenmodus befinden. Diese Option gibt die Mindestanzahl von Leerzeichen an, die zwei Spalten trennen. -t, --table ermittelt die Anzahl der Spalten, die die Eingabe enthalt und erstellt eine Tabelle. Die Spalten werden standardmassig durch Leerzeichen oder durch die in der Option --output-separator angegebenen Zeichen getrennt. Die Tabellenausgabe ist fur Schondruck (>>Pretty Printing<<) geeignet. --table-colorscheme Name Legt das Farbschema fest. Der Standardname ist >>column<<. Weitere Informationen finden Sie im Abschnitt FARBEN. -C, --table-column Attribute definiert eine Spalte durch eine durch Kommata getrennte Liste von Attributen. Diese Option kann mehrfach angegeben werden; jede Angabe definiert dabei eine Spalte. Die Attribute ersetzen einige der --table--Optionen. Beispielsweise definiert *--table-column name=BLA,right eine Spalte, deren Text rechtsbundig ausgerichtet ist. Diese Option und die Option -N/--table-columns schliessen sich gegenseitig aus. Die folgenden Attribute werden unterstutzt: name=Zeichenkette Farbbezeichnung trunc gibt an, dass der Text bei Bedarf gekurzt werden kann. Gleichbedeutend mit --table-truncate. Beachten Sie, dass die Spaltenuberschrift niemals gekurzt wird und die minimale Spaltenbreite darstellt. tree verwendet diese Spalte fur eine Ausgabe in Baumstruktur. Siehe --tree fur weitere Details. right richtet den Text rechtsbundig aus. Gleichbedeutend mit --table-right. width=Zahl gibt die Spaltenbreite an. Die Breite wird hierbei nur als Hinweis verwendet. Die Breite wird nur dann strikt angewendet, wenn auch das Attribut strictwidth verwendet wird. Die tatsachliche minimale Breite ist die Breite der Spaltenuberschrift. strictwidth folgt strikt der width=-Angabe, um die Mindestbreite der Spalte festzulegen. Die Spalte kann grosser sein, wenn die Ausgabebreite ausreichend Platz bietet. noextremes ignoriert unublich grosse Inhaltsbreiten. Siehe --table-noextreme fur weitere Details. hidden gibt die angegebenen Spalte nicht aus. Siehe --table-hide fur weitere Details. wrap erlaubt bei Bedarf die Verwendung mehrzeiliger Zellen fur langere Texte. Beachten Sie, dass die Spaltenuberschrift niemals umgebrochen wird und dadurch die minimale Spaltenbreite bestimmt. Weitere Informationen finden Sie unter --table-wrap. wrapnl bricht bei Zeilenvorschubzeichen um; Zeilenvorschube innerhalb von Tabellenfelddaten werden als Zeilenumbruche betrachtet. wrapzero bricht bei NUL-Zeichen innerhalb von Tabellenfelddaten um. json=Typ definiert den Spaltentyp fur die JSON-Ausgabe. Unterstutzte Typen sind string, number, float, array-string, array-number und boolean. color=Name definiert die Spaltenfarbe fur die Ausgabe im Terminal. Der Name ist ein Farbname (black, blink, blue, bold, brown, cyan, darkgray, gray, green, halfbright, lightblue, lightcyan, lightgray, lightgreen, lightmagenta, lightred, magenta, red, reset, reverse und yellow) oder eine ANSI-Farbsequenz, die durch ein Semikolon getrennt ist, jedoch ohne das Prafix 'ESC[' und das Suffix 'm'. Beispielsweise definiert >>37;41<< Sequenzen fur einen roten Hintergrund und einen weissen Vordergrund. Weitere Informationen finden Sie im Abschnitt FARBEN. colorkey=Name adressiert Farben wie im Farbschema definiert. Siehe --table-colorscheme. headercolor=Name wie color=, definiert aber nur die Farbe fur die Spaltenuberschrift. headercolorkey=Name adressiert die Farbe fur Uberschriften wie im Farbschema definiert. Siehe --table-colorscheme. -N, --table-columns Namen gibt die Spaltennamen in einer durch Kommata getrennten Liste an. Diese Namen werden fur die Tabellenuberschriften oder zum Adressieren der Spalte in Optionsargumenten verwendet. Siehe auch --table-column. -l, --table-columns-limit Anzahl gibt die maximale Anzahl der Eingabespalten an. Die letzte Spalte wird alle verbleibenden Zeilendaten enthalten, falls die Begrenzung kleiner ist als die Anzahl der Spalten der Eingabedaten. -R, --table-right Spalten richtet den Text in den angegebenen Spalten rechtsbundig aus. -T, --table-truncate Spalten gibt die Spalten an, in denen es moglich ist, bei Bedarf den Text zu kurzen. Anderenfalls werden sehr lange Tabelleneintrage in mehreren Zeilen ausgegeben. -E, --table-noextreme Spalten gibt die Spalten an, deren Inhalt bei der Berechnung der Spaltenbreite ignoriert werden soll. Diese Option beeinflusst die Breitenberechnung und die Tabellenformatierung, jedoch nicht den angezeigten Text. Die Option wird standardmassig fur die letzte sichtbare Spalte aktiv. -e, --table-header-repeat gibt eine Uberschrift fur jede Seite aus. -K, --table-header-as-columns verwendet die erste Eingabezeile als Tabellenuberschrift. Diese Option schliesst sich gegenseitig mit --table-columns und --table-column aus. -W, --table-wrap Spalten gibt die Spalten an, in denen mehrzeilige Zellen fur langeren Text verwendet werden konnen. Standardmassig wird der Text entsprechend der Spaltenbreite umgebrochen. Verwenden Sie --wrap-separator, um stattdessen an benutzerdefinierten Trennzeichen umzubrechen. Beachten Sie, dass die Spaltenuberschrift niemals umgebrochen wird und dadurch die minimale Spaltenbreite bestimmt. --wrap-separator Zeichenkette verwendet die angegebene Zeichenkette als Trennzeichen fur den Textumbruch in Spalten, in denen der Zeilenumbruch aktiviert ist. Das Trennzeichen wird beim Anzeigen des Textes durch Zeilenvorschube ersetzt. Diese Option erfordert den Tabellenmodus und Spalten mit aktiviertem Zeilenumbruch (siehe --table-wrap). Verwenden Sie beispielsweise |, um den Zeilenumbruch an Pipe-Zeichen innerhalb von Spaltendaten zu ermoglichen. -H, --table-hide Spalten gibt die angegebenen Spalten nicht aus. Der spezielle Platzhalter >>-<< kann dazu verwendet werden, alle unbenannten Spalten auszublenden (siehe --table-columns). -O, --table-order Spalten gibt die Reihenfolge der Ausgabespalten an. -n, --table-name Name gibt den fur die JSON-Ausgabe zu verwendenden Tabellennamen an. Standardmassig >>table<<. -m, --table-maxout fullt den gesamten verfugbaren Platz in der Ausgabe. -L, --keep-empty-lines behalt Zeilen in der Ausgabe, die nur Leerraum enthalten. Standardmassig werden leere Zeilen stets ignoriert. Der ursprungliche Name war --table-empty-lines, wurde aber verworfen, weil dieser den Eindruck erweckte, dass die Option nur im Tabellenmodus gilt. -r, --tree Spalte gibt die Spalte an, die in einer Baumansicht ausgegeben werden soll. Beachten Sie, dass Abhangigkeitsschleifen und andere Anomalien in Kind-Eltern-Relationen stillschweigend ignoriert werden. -i, --tree-id Spalte gibt die Spalte an, die die eindeutige untergeordnete ID jeder Zeile fur eine untergeordnete-ubergeordnete Beziehung enthalt. -p, --tree-parent Spalte gibt die Spalte an, die die ubergeordnete ID jeder Zeile fur eine untergeordnete Beziehung enthalt. -x, --fillrows fullt Zeilen, bevor Spalten gefullt werden. --color[=wann] stellt die Ausgabe farbig dar. Das optionale Argument wann kann auto, never oder always sein. Falls wann nicht angegeben ist, ist auto die Voreinstellung. Die Farben konnen deaktiviert werden. Die jeweilige einkompilierte Voreinstellung zeigt Ihnen die Option --help an. Siehe auch den Abschnitt FARBEN. -h, --help zeigt einen Hilfetext an und beendet das Programm. -V, --version zeigt Versionsinformationen an und beendet das Programm. FARBEN Die farbige Darstellung der Ausgabe wird uber die Funktionen in terminal-colors.d(5) gesteuert. Die implizierte Einfarbung kann deaktiviert werden, indem Sie folgende (leere) Datei anlegen: /etc/terminal-colors.d/column.disable fur den Befehl column oder fur alle Befehle mit /etc/terminal-colors.d/disable Seit Version 2.41 wird auch die Umgebungsvariable $NO_COLOR unterstutzt, um die farbige Darstellung der Ausgabe zu deaktivieren, sofern sie nicht explizit durch eine Befehlszeilenoption aktiviert wird. Die benutzerspezifischen Dateien $XDG_CONFIG_HOME/terminal-colors.d oder $HOME/.config/terminal-colors.d setzen die globale Einstellung ausser Kraft. Beachten Sie, dass die Einfarbung der Ausgabe standardmassig aktiviert sein konnte und in diesem Fall die terminal-colors.d-Verzeichnisse noch nicht zwangslaufig vorhanden sein mussen. Der vorgegebene Farbschemaname ist >>column<<, welcher folgendermassen ausser Kraft gesetzt werden kann: --table-colorscheme Name Dann kann Name[.disable|enable|scheme] in /etc/terminal-colors.d/, $XDG_CONFIG_HOME/terminal-colors.d oder $HOME/.config/terminal-colors.d/ verwendet werden. Der logische Farbname (Schlussel) im Farbschema kann uber die Spalteneigenschaften colorkey= und headercolorkey= angegeben werden. Beispiel: echo 'important red' > ~/.config/terminal-colors.d/cooltable.scheme echo 'important-header 37;41' >> ~/.config/terminal-colors.d/cooltable.scheme echo -e "a b c\naa bb cc\naaa bbb ccc" | column -t \ --table-colorscheme=cooltable \ -C name=AAA,colorkey=important,headercolorkey=important-header \ -C name=BBB,color=magenta,headercolor=cyan \ -C name=CCC,color=green Dadurch wird ein Farbschema mit dem Namen >>cooltable<< erstellt und die erste Spaltenuberschrift sowie die Daten entsprechend den Schlusseln des Schemas eingefarbt. Die beiden anderen Spalten werden anhand ihrer Farbnamen eingefarbt. UMGEBUNGSVARIABLEN COLUMNS dient zur Ermittlung der Grosse des Bildschirms, falls keine anderen Informationen verfugbar sind. LIBSMARTCOLS_DEBUG=all aktiviert die Debug-Ausgabe fur libsmartcols. LIBSMARTCOLS_DEBUG_PADDING=on verwendet sichtbare Auffullzeichen. GESCHICHTE Der Befehl column erschien in 4.3BSD-Reno. FEHLER In Version 2.23 anderte sich die Option -s zu >>non-greedy<<, zum Beispiel: printf "a:b:c\n1::3\n" | column -t -s ':' Alte Ausgabe: a b c 1 3 Neue Ausgabe (seit Util-linux 2.23): a b c 1 3 In fruheren Versionen dieses Werkzeugs wurde angegeben, dass >>Zeilen vor Spalten gefullt werden<< und dass die Option -x dies umkehrt. Diese Formulierung reflektierte nicht das tatsachliche Verhalten und wurde daher korrigiert (siehe oben). Andere Implementierungen von column verwenden moglicherweise weiterhin die altere Dokumentation, aber das Verhalten sollte auf jeden Fall identisch sein. BEISPIELE Die Datei /etc/fstab mit einer Uberschriftenzeile und rechtsbundig angeordneten Zahlen ausgeben: sed 's/#.*//' /etc/fstab | column --table --table-columns SOURCE,TARGET,TYPE,OPTIONS,FREQ,PASS --table-right FREQ,PASS Die Datei /etc/fstab ausgeben und unbenannte Spalten verbergen: sed 's/#.*//' /etc/fstab | column --table --table-columns SOURCE,TARGET,TYPE --table-hide - Einen Baum ausgeben: echo -e '1 0 A\n2 1 AA\n3 1 AB\n4 2 AAA\n5 2 AAB' | column --tree-id 1 --tree-parent 2 --tree 3 1 0 A 2 1 |-AA 4 2 | |-AAA 5 2 | `-AAB 3 1 `-AB Tabelle mit benutzerdefiniertem Umbruchtrennzeichen ausgeben: echo -e 'Name:Description\nJohn:A|software|developer\nJane:A|data|scientist' | column --table --separator ':' --table-wrap 2 --wrap-separator '|' Name Description John A software developer Jane A data scientist SIEHE AUCH colrm(1), ls(1), paste(1), sort(1) FEHLER MELDEN Nutzen Sie zum Melden von Fehlern das Fehlererfassungssystem . VERFUGBARKEIT Der Befehl column ist Teil des Pakets util-linux, welches aus dem Linux-Kernel-Archiv heruntergeladen werden kann. util-linux 2.42.1 2026-05-18 COLUMN(1)