Du kan visa en avgränsad fil i Linux-terminalen så att varje avgränsat objekt visas i sin egen kolumn. Till exempel, här är ett exempel engelska Premier League fotboll bord som använder rör som avgränsare.
pos | lag | pld | pts 1 | leicester | 31 | 66 2 | tottenham | 31 | 61 3 | arsenal | 30 | 55 4 | människa stad | 30 | 51 5 | hamnare | 30 | 50 6 | man utd | 30 | 50 7 | southampton | 31 | 47 8 | stoke city | 31 | 46 9 | liverpool | 29 | 44 10 | Chelsea | 30 | 41 |
Denna lista innehåller de 10 bästa lagen, deras namn, antalet spel de har spelat och poängen har skett.
Det finns ett antal Linux-kommandon som du kan använda för att visa data i kommandoraden. Till exempel, katt Kommando visar filen precis som den visas i filen. De svans Kommando kan användas för att visa en del av filen eller hela den, som kan huvud kommando. Ingen av dessa kommandon visar utmatningen på ett sätt som gör det bra.
Helst vill du kunna se data utan rörsymbolen och åtskilda. Det är där kolumn kommandot kommer in.
Grundläggande användning av kolumnkommandot
Du kan köra kolumnkommandot utan några parametrar enligt följande:
kolumn
Det här fungerar bäst med filer med ord med mellanslag mellan orden. det fungerar inte lika bra med tabelldata som i detta ligatabellsexempel.
Utgången är enligt följande:
pos | lag | pld | pts 2 | tottenham | 31 | 61 4 | man stad | 30 | 51 6 | man utd | 30 | 50 8 | stoke city | 31 | 46 10 | Chelsea | 30 | 41 1 | leicester | 31 | 66 3 | arsenal | 30 | 55 5 | west ham | 30 | 50 7 | southampton | 31 | 47 9 | liverpool | 29 | 44
Ange kolumnbredden
Om du vet bredden på kolumnerna kan du använda följande kommando för att skilja kolumnen efter bredd:
kolumn -c
Om du till exempel vet bredden på varje kolumn är 20 tecken kan du använda följande kommando:
kolumn -c20
När det gäller ligatabellen fungerar det inte bra om inte alla kolumner har en viss bredd. För att bevisa detta, ändra ligatabellfilen enligt följande:
pos team pld poäng 1 leicester 31 66 2 tottenham 31 61 3 arsenal 30 55 4 man stad 30 51 5 västra skinka 30 50 6 man utd 30 50 7 so'ton 31 47 8 stoke 31 46 9 liverpool 29 44 10 chelsea 30 41
Nu med hjälp av följande kommando kan du få en anständig utgång:
kolumn -c10 leaguetable
Problemet med detta är att data i filen redan såg bra ut så att svans-, huvud-, nano- eller kattkommandon kan visa samma information på en acceptabel sätt.
Specificerar separatorer med kolumnkommandot
Det bästa sättet att använda kolumnkommandot på kommatecken, rör eller andra avgränsade filer är följande:
kolumn -s "|" -t
Med -s-omkopplaren kan du bestämma avgränsaren som ska användas. Om din fil exempelvis är komma-separerad kan du lägga "," efter -s. -T-omkopplaren visar data i ett tabellformat.
Output Separators
Hittills har det här exemplet visat hur man arbetar med avgränsaren av en inmatningsfil, men vad sägs om data när den visas på skärmen.
Linux-standarden är två mellanslag, men kanske du vill använda två kolon istället. Följande kommando visar hur du anger en utmatningsavskiljare:
kolumn -s "|" -t -o "::"
När det används med ligabordfilen, ger kommandot följande utmatning:
pos :: lag :: pld :: pts 1 :: leicester :: 31 :: 66 2 :: tottenham :: 31 :: 61 3 :: arsenal :: 30 :: 55 4 :: manstad :: 30 :: 51 5 :: West Ham :: 30 :: 50 6 :: Man Utd :: 30 :: 50 7 :: Southampton :: 31 :: 47 8 :: Stoke City :: 31 :: 46 9 :: Liverpool :: 29 :: 44 10 :: Chelsea :: 30 :: 41
Fyll rader före kolumner
Det finns en annan strömbrytare som inte är särskilt användbar men ingår här för fullständighet. -X-omkopplaren när den används med -c-omkopplaren fyller rader före kolumnerna.
Så vad betyder det? Titta på följande exempel:
kolumn -c100 leaguetable
Resultatet av detta skulle vara enligt följande:
pos | lag | pld | pts 3 | arsenal | 30 | 55 6 | man utd | 30 | 50 9 | liverpool | 29 | 44 1 | leicester | 31 | 66 4 | man stad | 30 | 51 7 | southampton | 31 | 47 10 | Chelsea | 30 | 41 2 | tottenham | 31 | 61 5 | västra skinka | 30 | 50 8 | stoke city | 31 | 46
Som du kan se går den ner först och sedan över.
Kolla nu på det här exemplet:
kolumn -c100 -x leaguetable
Den här gången är utmatningen följande:
pos | lag | pld | pts 1 | leicester | 31 | 66 2 | tottenham | 31 | 61 3 | arsenal | 30 | 55 4 | människa stad | 30 | 51 5 | hamnare | 30 | 50 6 | man utd | 30 | 50 7 | southampton | 31 | 47 8 | stoke city | 31 | 46 9 | liverpool | 29 | 44 10 | Chelsea | 30 | 41 |
Data går över skärmen och sedan ner.
Övriga omkopplare
De enda andra omkopplarna är följande:
kolumn -V
Detta visar vilken version av kolumnen som är installerad på din dator.
kolumn - hjälp
Detta visar den manuella sidan i terminalfönstret.




