| COLUMN(1) | Polecenia użytkownika | COLUMN(1) |
NAZWA
column - tworzy kolumny z list
SKŁADNIA
column [opcje] [plik ...]
OPIS
Narzędzie column formatuje swoje wejście tworząc kilka kolumn. Obsługuje trzy tryby:
wypełnia kolumny przed wierszami
wypełnia wiersze przed kolumnami
tworzy tabelę
Wejście jest przyjmowane z pliku lub ze standardowego wejścia. Puste wiersze są ignorowane, a wszelkie nieprawidłowe sekwencje wielobajtowe są kodowane za pomocą konwencji x<hex> (liczby szesnastkowej).
OPCJE
Argument kolumny w przypadku poniższych opcji --table-* jest listą nadanych przez użytkownika nazw kolumn, rozdzielonych przecinkiem, definiowanych jako --table-columns nazwa1,nazwa2,..., lub ich indeksów, w kolejności w jakiej pojawiają się na wejściu, poczynając od 1, albo też nazw, definiowanych przez atrybut --table-column. Można mieszać nazwy i indeksy. Aby podać wszystkie kolumny można skorzystać ze specjalnego symbolu zastępczego "0" (np. -R0), a aby określić ostatnią widoczną kolumnę, można skorzystać z symbolu "-1" (np. -R -1). Przy adresowaniu kolumn indeksami, można korzystać z zakresów takich jak "1-5".
-J, --json
-c, --output-width szerokość
Aby zapobiec ograniczaniu szerokości wyjścia, można użyć symbolu zastępczego unlimited (lub 0). Zaleca się takie postępowanie przy przekierowywaniu wyjścia do pliku.
(Pierwotna długa nazwa tej opcji brzmiała --columns; nazwa ta jest przestarzała od wersji v2.30).
-d, --table-noheadings
-o, --output-separator łańcuch
-s, --input-separator, --separator separatory
-S, --use-spaces liczba
-t, --table
--table-colorscheme nazwa
-C, --table-column atrybuty
Obsługiwane są następujące atrybuty:
name=łańcuch
trunc
tree
right
width=liczba
strictwidth
noextremes
hidden
wrap
wrapnl
wrapzero
json=typ
color=nazwa
colorkey=nazwa
headercolor=nazwa
headercolorkey=nazwa
-N, --table-columns nazwy
-l, --table-columns-limit liczba
-R, --table-right kolumny
-T, --table-truncate kolumny
-E, --table-noextreme kolumny
Opcja ta domyślnie jest aktywowana wobec ostatniej widocznej kolumny.
-e, --table-header-repeat
-K, --table-header-as-columns
-W, --table-wrap kolumny
--wrap-separator łańcuch
-H, --table-hide kolumny
-O, --table-order kolumny
-n, --table-name nazwa
-m, --table-maxout
-L, --keep-empty-lines
-r, --tree kolumna
-i, --tree-id kolumna
-p, --tree-parent kolumna
-x, --fillrows
--color[=kiedy]
-h, --help
-V, --version
KOLORY
Kolorowanie wyjściowe zaimplementowano poprzez terminal-colors.d(5). Jawne kolorowanie można wyłączyć za pomocą pustego pliku
/etc/terminal-colors.d/column.disable
dla polecenia column albo dla wszystkich narzędzi plikiem
/etc/terminal-colors.d/disable
Od wersji 2.41, obsługiwana jest również zmienna środowiskowa $NO_COLOR, służąca do wyłączenia kolorowania wyjścia, o ile nie włączy się je wprost opcją wiersza poleceń.
Globalne ustawienie przesłonią $XDG_CONFIG_HOME/terminal-colors.d lub $HOME/.config/terminal-colors.d danego użytkownika.
Proszę zauważyć, że kolorowanie wyjścia może być domyślnie włączone i wówczas katalogi terminal-colors.d mogą jeszcze nie istnieć.
Domyślnym schematem kolorów jest "column," i można go przesłonić za pomocą
--table-colorscheme nazwa
Następnie można stosować plik nazwa[.disable|enable|scheme] w /etc/terminal-colors.d/, $XDG_CONFIG_HOME/terminal-colors.d lub $HOME/.config/terminal-colors.d/.
Logiczna nazwa koloru (klucz) w schemacie kolorów może być zaadresowana przez właściwość kolumny colorkey= i headercolorkey=. Na przykład
echo 'istotny red' > ~/.config/terminal-colors.d/fajnatabela.scheme
echo 'istotny-naglowek 37;41' >> ~/.config/terminal-colors.d/fajnatabela.scheme
echo -e "a b c\naa bb cc\naaa bbb ccc" | column -t \
--table-colorscheme=fajnatabela \
-C name=AAA,colorkey=istotny,headercolorkey=istotny-naglowek \
-C name=BBB,color=magenta,headercolor=cyan \
-C name=CCC,color=green
Powyższe utworzy schemat kolorów o nazwie "fajnatabela" i pokoloruje nagłówek i dane pierwszej kolumny zgodnie z kluczami ze schematu. Pozostałe dwie kolumny będą pokolorowane za pomocą bezpośrednich nazw kolorów.
ŚRODOWISKO
COLUMNS
LIBSMARTCOLS_DEBUG=all
LIBSMARTCOLS_DEBUG_PADDING=on
HISTORIA
Polecenie column pojawiło się w 4.3BSD-Reno.
USTERKI
Wersja 2.23 zmieniła działanie opcji -s na niezachłanne np.:
printf "a:b:c\n1::3\n" | column -t -s ':'
Stare wyjście:
a b c 1 3
Obecne wyjście (od util-linux 2.23):
a b c 1 3
Historyczne wersje narzędzie wskazywały, że domyślnie "wiersze są wypełniane przed kolumnami", a opcja -x to odwraca. Takie sformułowanie nie było jednak zgodne z faktycznym zachowaniem, dlatego zostało poprawione (zob. wyżej). Inne implementacje column mogą wciąż korzystać ze starszej dokumentacji, lecz ich zachowanie powinno być identyczne.
PRZYKŁADY
Wypisuje fstab z wierszem nagłówka oraz wyrównuje liczby do prawej strony:
sed 's/#.*//' /etc/fstab | column --table --table-columns SOURCE,TARGET,TYPE,OPTIONS,FREQ,PASS --table-right FREQ,PASS
Wypisuje fstab i ukrywa nienazwane kolumny:
sed 's/#.*//' /etc/fstab | column --table --table-columns SOURCE,TARGET,TYPE --table-hide -
Wypisuje drzewo:
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
Wypisuje tabelę z podanym separatorem zawijania:
echo -e 'Nazwa:Opis\nJan:twórca|oprogramowania\nJanina:analityk|danych' | column --table --separator ':' --table-wrap 2 --wrap-separator '|'
Nazwa Opis
Jan twórca
oprogramowania
Janina analityk
danych
ZOBACZ TAKŻE
ZGŁASZANIE BŁĘDÓW
Problemy należy zgłaszać w systemie śledzenia błędów https://github.com/util-linux/util-linux/issues.
DOSTĘPNOŚĆ
Polecenie column jest częścią pakietu util-linux, który można pobrać ze strony Archiwum jądra Linux https://www.kernel.org/pub/linux/utils/util-linux/.
| 2026-09-02 | util-linux 2.42.3 |