Linux Cut kommando med exempel

Linux ger cut kommando för att ta bort sektioner från varje rad av produktionen i bash. cut kommandot ger en mekanism för att filtrera extrahera kolumn / text från en fil eller standardutmatning. Detaljerade exempel finns nedan., Vi har följande textfil som heter fruits.txt

apple 1 good grape 5 bad banana 2 not bad
exempeltext
cut OPTION... ...

välj kolumn

kommandot klipp ger möjlighet att välja en angiven kolumn enligt teckennummer för alla rader. Här skriver vi ut alla rader 3 teckenlinje för rad till konsolen. Detta kommer bara att skriva ut ett enda tecken.,

$ cut -c3 fruits.txt
Välj kolumn

Välj kolumn för teckenintervall

i föregående exempel har vi tryckt ett enda tecken till terminalen. Vi kan också skriva ut flera tecken till konsolen genom att ange teckenintervallet som nedan. Vi kan se att teckenindexet börjar vid 1.,

$ cut -c1-6 fruits.txt
Välj kolumn för Teckenområde

Välj kolumn med startposition

en annan användbar funktion i cut anger bara att starta position upp till slutet.

$ cut -c3- fruits.txt
Välj kolumn med startposition

Välj kolumn med slutposition

Vi kan skriva ut intervall från start till angiven position och endast ange slutposition., Detta kommer att anta startposition som 1

$ cut -c-3 fruits.txt
Välj kolumn med slutposition

Välj ett fält

fältet är en del av textavgränsad med specifik tecken som Space, tab, double comma, etc. Vi kan välja text med fältnummer. Som standard är fältavgränsare fliken. Vår text är redan tillgänglig flik för avgränsning. I det här exemplet väljer vi 3. fält.,

$ cut -f3 fruits.txt
Välj ett fält

Välj flera fält

som vi gör i tecken kan vi också ange fältområde. Vi väljer fruktnamn och räknar med följande kommando.

$ cut -f1-2 fruits.txt
Välj flera fält

följande exempel väljer mer än ett fält en efter en som inte använder intervall.,

$ cut -f1,2,3 fruits.txt
Välj flera fält

sista fältet

en av de mest populära användningsområdena av cut skriver ut sista fältet. Problemet är att fältantalet kan ändras enligt text och vi kan inte ange det sista fältet endast med kommandot cut. Följande exempel använder kommandot rev för att få det sista fältet.,

$ cat fruits.txt | rev | cut -f1 | rev
sista fältet

Välj fält inkluderar angivna tecken

som standard cut

iv id = ”har inte möjlighet att utesluta rader enligt tecken, men grep kan enkelt användas för att implementera den här funktionen., Vi väljer bara rader som innehåller app

$ grep "app" fruits.txt | cut -f1-2
Välj fält som inkluderar specificerade tecken

Välj fält utom för specificerade fält.tecken

Vi kan vända det föregående exemplet och ta bort oönskade rader. Vi kommer att ta bort rader innehåller app och sedan skriva ut kolumner från 1 till 2 .,

$ grep -v "app" fruits.txt | cut -f1-2
Välj fält förutom angivna tecken

ange avgränsare

avgränsaren används för att dela upp fält. Som standard används fliken som avgränsare. Men det kan anges med -d alternativ som nedan. Efter exemplet använder vi: som avgränsare eftersom filenpasswd använder den. Då vill vi bara visa användarnamn som finns i fält 1.,

$ cut -d: -f1 /etc/passwd
ange avgränsare

Skriv ut utom fält

som vi ser tidigare kan fält skrivas ut som intervall också. Vi kan också skriva ut genom att undanta fält. Detta kommer att skriva ut alla döpa fält. Efter exemplet kan vi vilja skriva ut alla fält utom 2.

ändra avgränsare

Text kan ha avgränsare som standard. I vissa situationer kanske vi vill ändra avgränsare när vi skriver ut till konsolen., --output-delimiter option can be used for this operation. The following example will change the tab delimiter to the comma.

$ cut -f1,2,3 --output-delimiter="," fruits.txt
Change Delimiter

Lämna ett svar

Din e-postadress kommer inte publiceras. Obligatoriska fält är märkta *