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 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 columns 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' (z.B. -R0) kann verwendet werden, um alle Spalten anzugeben, und '-1' (z.B. -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. Der ursprungliche Name dieser Option lautet --columns, er gilt seit Version 2.30 als veraltet. Beachten Sie, dass eine Eingabe, die grosser als die angegebene Breite ist, standardmassig nicht gekurzt wird. Die Vorgabe ist eine Breite von 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. -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, --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. -C, --table-column Attribute definiert eine Spalte durch eine durch Kommata getrennte Liste von Spaltenattributen. 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. 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. strictwidth folgt strikt der Spalteneinstellung width=. noextreme ignoriert unublich grosse Zellenbreiten. Siehe --table-noextreme fur weitere Details. wrap erlaubt bei Bedarf die Verwendung einer mehrzeiligen Zelle fur langen Text. Weitere Informationen finden Sie unter --table-wrap. hide gibt die angegebenen Spalte nicht aus. Siehe --table-hide fur weitere Details. json=Typ definiert den Spaltentyp fur die JSON-Ausgabe. Unterstutzte Typen sind string, number und boolean. -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, bei denen es moglich ist, bei der Berechnung der Spaltenbreite ungewohnlich lange Zellen (langer als der Durchschnitt) zu ignorieren. Diese Option beeinflusst Breitenermittlung und Tabellenformatierung, aber nicht den ausgegebenen Text. Die Option wird standardmassig fur die letzte sichtbare Spalte verwendet. -e, --table-header-repeat gibt eine Uberschrift fur jede Seite aus. -W, --table-wrap Spalten gibt die Spalten an, wo mehrzeilige Zellen fur langen Text verwendet werden konnen. -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. -h, --help zeigt einen Hilfetext an und beendet das Programm. -V, --version zeigt Versionsinformationen an und beendet das Programm. UMGEBUNGSVARIABLEN Die Grosse des Bildschirms wird aus der Umgebungsvariable COLUMNS ermittelt, falls keine anderen Informationen verfugbar sind. 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 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.41.2 2025-09-22 COLUMN(1)