COLUMN(1) Comenzi utilizator COLUMN(1)

column - afișează listele în coloane

column [opțiuni] [filșier ...]

Aplicația column formatează datele de intrare în mai multe coloane. Aceasta are trei moduri:

completează coloanele înaintea rândurilor

Acesta este modul implicit (necesar pentru compatibilitatea cu versiunile anterioare).

completează rândurile înainte de a completa coloanele

Acest mod este activat cu opțiunea -x, --fillrows.

create a table

Determină numărul de coloane pe care le conține intrarea și creează un tabel. Acest mod este activat prin opțiunea -t, --table. Ieșirea este aliniată la lățimea terminalului în modul interactiv, și la 80 de coloane în modul non-interactiv (a se vedea --output-width pentru mai multe detalii). Formatarea personalizată poate fi aplicată prin utilizarea diferitelor opțiuni --table-\*.

Datele de intrare sunt preluate din fișier sau, în caz contrar, de la intrarea standard. Liniile goale sunt ignorate, iar toate secvențele multiocteți nevalide sunt codificate cuconvenția x<hex>.

Argumentul columns pentru opțiunile --table-\* este o listă separată prin virgule de nume furnizate de utilizator, definite cu --table-column nume1,nume2,..., indici ai coloanelor, așa cum apar în datele de intrare, începând cu 1, sau nume, definite de un atribut --table-columns. Este posibil să se combine nume și indici. Valoarea specială „0” (de exemplu, -R0) poate fi utilizată pentru a specifica toate coloanele și „-1” (de exemplu, -R -1) pentru a specifica ultima coloană vizibilă. Este posibil să se utilizeze intervale precum „1-5” la adresarea coloanelor prin indici.

-J, --json

Utilizează formatul de ieșire JSON pentru a afișa tabelul, Opțiunea --table-columns este necesară, iar opțiunea --table-name este recomandată.

-c, --output-width lățimea

Ieșirea este formatată la o lățime specificată ca număr de caractere. Numele original al acestei opțiuni este --columns; acest nume este depreciat de la versiunea v2.30. Rețineți că intrarea mai lungă decât lățimea nu este trunchiată în mod implicit. Valoarea implicită este lățimea terminalului și 80 de coloane în modul non-interactiv. Titlurile coloanelor nu sunt niciodată trunchiate.

Valoarea rezervată „unlimited”(nelimitat) (sau 0) poate fi utilizată pentru a preveni restricționarea lățimii de ieșire. Acest lucru este recomandat, de exemplu, atunci când redirecționați ieșirea către un fișier.

-d, --table-noheadings

Omite afișarea antetului. Această opțiune permite utilizarea numelor de coloane furnizate de utilizator în linia de comandă, dar păstrează antetul ascuns la afișarea tabelului.

-o, --output-separator șir

Delimitator de coloană pentru ieșirea tabelului (implicit două spații).

-s, --separator separatori

Posibilii delimitatori ai elementelor de intrare (valoarea implicită este spațiul în alb).

-S, --use-spaces număr

Atunci când nu este în modul tabel, utilizează spații albe în loc de tabulatoare pentru a alinia coloanele. Această opțiune specifică numărul minim de spații albe care separă două coloane.

-t, --table

Determină numărul de coloane pe care le conține fișierul de intrare și creează un tabel. În mod implicit, coloanele sunt delimitate cu spații albe sau cu caractere furnizate folosind opțiunea --output-separator. Ieșirea tabelului este utilă pentru afișarea de tip „pretty-printing”, imprimare-formatată-plăcut.

-C, --table-column atribute

Definește o coloană printr-o listă de atribute ale coloanei separate prin virgule. Această opțiune poate fi utilizată de mai multe ori, fiecare utilizare definește doar o singură coloană. Atributele înlocuiesc unele dintre opțiunile --table-. De exemplu, --table-column name=FOO,right definește o coloană în care textul este aliniat la dreapta. Opțiunea este mutual exclusivă pentru opțiunea --table-columns.

Atributele acceptate sunt:

name=șir

Numele coloanei.

trunc

Trunchiază textul coloanei atunci când este necesar. La fel ca --table-truncate.

right

Aliniază textul la dreapta. La fel ca --table-right.

width=număr

Lățimea coloanei. Lățimea este utilizată doar ca un indiciu. Pentru a forța acest lucru, specificați și atributul strictwidth.

strictwidth

Respectă cu strictețe valoarea width= a coloanei.

noextreme

Ignoră lățimea neobișnuit de mare a celulei. A se vedea, pentru mai multe detalii --table-noextreme.

wrap

Permite utilizarea unei celule cu mai multe linii pentru textul lung, dacă este necesar. Consultați --table-wrap pentru mai multe detalii.

hide

Nu afișează coloanele. A se vedea --table-hide pentru mai multe detalii.

json=tip

Definește tipul coloanei pentru ieșirea JSON. Tipurile acceptate sunt șir de caractere, număr și valoare booleană.

-N, --table-columns nume

Specifică numele coloanelor printr-o listă de nume separate prin virgule. Numele sunt utilizate pentru antetul tabelului și pentru adresarea coloanelor în argumentele opțiunilor. A se vedea, de asemenea, --table-column.

-l, --table-columns-limit număr

Specifică numărul maxim de coloane de intrare. Ultima coloană va conține toate datele de linie rămase dacă limita este mai mică decât numărul de coloane din datele de intrare.

-R, --table-right coloane

Aliniază textul la dreapta în coloanele specificate.

-T, --table-truncate coloane

Specifică coloanele în care textul poate fi trunchiat atunci când este necesar, în caz contrar intrările foarte lungi din tabel pot fi imprimate pe mai multe rânduri.

-E, --table-noextreme coloane

Specifică coloanele în care este posibil să se ignore celulele neobișnuit de lungi (mai lungi decât media) atunci când se calculează lățimea coloanei. Opțiunea are impact asupra calculării lățimii și a formatelor de tabel, dar textul afișat nu este afectat.

Opțiunea este utilizată în mod implicit pentru ultima coloană vizibilă.

-e, --table-header-repeat

Afișează linia de titlu pentru fiecare pagină.

-W, --table-wrap coloane

Specifică coloanele în care pot fi utilizate celule cu mai multe linii pentru texte lungi.

-H, --table-hide coloane

Nu imprimă coloanele specificate. Se poate utiliza simbolul special „-” pentru a ascunde toate coloanele nenumite (a se vedea --table-columns).

-O, --table-order coloane

Specifică ordinea coloanelor de ieșire.

-n, --table-name nume

Specifică numele tabelului utilizat pentru ieșirea JSON. Valoarea implicită este „table”.

-m, --table-maxout

Ocupă tot spațiul disponibil la ieșire.

-L, --keep-empty-lines

Păstrează liniile cu spații albe din datele de intrare. Valoarea implicită este de a ignora liniile goale. Numele original al acestei opțiuni a fost --table-empty-lines, dar de atunci a fost depreciat deoarece dă impresia falsă că opțiunea se aplică numai la modul tabel.

-r, --tree coloana

Specifică coloana care urmează să fie utilizată pentru o ieșire de tip arbore. Rețineți că dependențele circulare și alte anomalii în relația proces-copil și proces-părinte sunt ignorate în tăcere.

-i, --tree-id coloana

Specifică coloana care conține ID-urile unice ale proceselor-copil pe fiecare linie pentru o relație copil-părinte.

-p, --tree-parent coloana

Specifică coloana care conține ID-urile unice ale proceselor-părinte pe fiecare linie pentru o relație copil-părinte.

-x, --fillrows

Completează rândurile înainte de a completa coloanele.

-h, --help

Afișează acest mesaj de ajutor și iese.

-V, --version

Afișează versiunea și iese.

Variabila de mediu COLUMNS este utilizată pentru a determina dimensiunea ecranului în cazul în care nu sunt disponibile alte informații.

Comanda column a apărut în 4.3BSD-Reno.

Versiunea 2.23 a schimbat opțiunea -s pentru a nu fi „lacomă de spațiu”, de exemplu:

printf "a:b:c\n1::3\n" | column -t -s ':'

Ieșirea veche:

a  b  c
1  3

Ieșirea nouă ( începând cu util-linux 2.23):

a  b  c
1     3

Versiunile istorice ale acestui instrument indicau că "rândurile sunt completate înaintea coloanelor" în mod implicit și că opțiunea -x inversează acest lucru. Această formulare nu reflecta comportamentul real, iar de atunci a fost corectată (a se vedea mai sus). Alte implementări ale column pot continua să utilizeze documentația mai veche, dar comportamentul ar trebui să fie identic în orice caz.

Afișează fstab cu linia de titlu și aliniază numerele la dreapta:

sed 's/#.*//' /etc/fstab | column --table --table-columns SOURCE,TARGET,TYPE,OPTIONS,FREQ,PASS --table-right FREQ,PASS

Afișează fstab și ascunde coloanele care nu au fost numite:

sed 's/#.*//' /etc/fstab | column --table --table-columns SOURCE,TARGET,TYPE --table-hide -

Afișează un arbore:

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

colrm(1), ls(1), paste(1), sort(1)

Pentru rapoarte de eroare, folosiți sistemul de urmărire al erorilor https://github.com/util-linux/util-linux/issues.

Comanda column face parte din pachetul util-linux care poate fi descărcat de la Linux Kernel Archive https://www.kernel.org/pub/linux/utils/util-linux/.

2025-03-29 util-linux 2.41