Linux gir cut
kommando for å fjerne deler fra hver linje utgang i bash. cut
– kommandoen gir en mekanisme for å filtrere ekstrakt kolonne/tekst fra en fil eller standard output. Detaljerte eksempler finner du nedenfor., Vi har følgende tekst fil som heter fruits.txt
apple 1 good grape 5 bad banana 2 not bad
cut OPTION... ...
Velg Kolonne
Klipp ut-kommandoen gir deg muligheten til å velge en bestemt kolonne i henhold til antall tegn for alle rader. Her vil vi skrive ut alle rader 3 tegn linje for linje til konsollen. Dette vil bare skrive ut ett enkelt tegn.,
$ cut -c3 fruits.txt
Velg Kolonnen For tegnområde
I forrige eksempel, vi har skrevet ut et enkelt tegn til terminalen. Vi kan også skrive ut flere tegn til konsollen ved å angi tegn utvalg som nedenfor. Vi kan se at karakteren indeks starter på 1.,
$ cut -c1-6 fruits.txt
Velg Kolonnen Med Start Posisjon
en Annen nyttig funksjon av kuttet er å spesifisere bare å starte posisjon opp til slutt.
$ cut -c3- fruits.txt
Velg Kolonnen Med Slutten Posisjon
Vi kan skrive ut serien fra start til angitt posisjon bare å angi endepunktet., Dette vil anta start posisjon som 1
$ cut -c-3 fruits.txt
Velg Enkelt Felt
faget er en del av teksten er avgrenset med bestemte tegn som mellomrom, tabulator, dobbeltrom komma, osv. Vi kan velge tekst med feltnr. Som standard feltet skilletegn er kategorien. Vår tekst er allerede gitt tab for avgrensning. I dette eksemplet vil vi velge 3. felt.,
$ cut -f3 fruits.txt
Velg Flere Felt
Som vi gjør i karakterer som vi kan også angi feltet rekkevidde. Vi vil velge frukt navn og teller med følgende kommando.
$ cut -f1-2 fruits.txt
følgende eksempel velger mer enn ett felt én etter én, ikke ved hjelp av områdene.,
$ cut -f1,2,3 fruits.txt
Siste Feltet
En av de mest populære bruksområder av cut
er skrive ut siste feltet. Problemet er at feltet teller kan endres i henhold til tekst, og vi kan ikke spesifisere det siste feltet bare ved hjelp av cut
– kommandoen. Følgende eksempel bruker rev
kommando for å få siste feltet.,
$ cat fruits.txt | rev | cut -f1 | rev
Velg Felt som Inkluderer Angitte Tegn
standard cut
ikke har muligheten til å ekskludere linjer i henhold til figurene, men grep
kan brukes for enkelt å implementere denne funksjonen., Vi vil bare velge rader inneholder app
$ grep "app" fruits.txt | cut -f1-2
Velg Feltene Unntatt for Angitte Tegn
Vi kan reversere den forrige eksempel og fjerne uønskede rader. Vi vil fjerne linjer inneholder app
og deretter skrive ut kolonner fra 1 til 2 .,
$ grep -v "app" fruits.txt | cut -f1-2
Angi Skilletegn
skilletegnet som brukes til å dele-feltene. Som standard, vil den kategorien brukes som skilletegn. Men det kan være spesifisert med -d
alternativ som nedenfor. Følgende eksempel, bruker vi :
som skilletegn fordi passwd
fil som bruker det. Så vi bare ønsker å vise brukerne som bor i felt 1.,
$ cut -d: -f1 /etc/passwd
skriv Ut, Bortsett fra Feltene
Som vi ser av tidligere feltene kan skrives ut som varierer også. Vi kan også skrive ut ved å unnta felt. Dette vil skrive ut alle døpe felt. Følgende eksempel, kan vi ønsker å skrive ut alle feltene unntatt 2.
Endre Skilletegnet
Tekst kan ha skilletegn som standard. I noen situasjoner kan det hende at vi vil endre skilletegnet mens du skriver ut til konsollen., --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