cut

Linux.fista
Versio hetkellä 9. helmikuuta 2016 kello 07.31 – tehnyt Lahtis (keskustelu | muokkaukset)
(ero) ← Vanhempi versio | Nykyinen versio (ero) | Uudempi versio → (ero)
Siirry navigaatioon Siirry hakuun

cut komentorivikomentoa käytetään näyttämään syötteen riveiltä vain tietyt osiot. Osiot voidaan määritellä tavuina, merkkeinä tai kenttinä.

Käyttö

Näytetään kolme tabilla erotettua kenttää sisältävästi tiedostosta testi

123     abc     ijk
456     dce     lmn
789     fgh     opq

vain kentät 1 ja 3

cut -f 1,3 testi

mikä tulostaa

123     ijk
456     lmn
789     opq

Valittaessa kenttiä (valitsin -f) cut käyttää oletuksena tabia kenttien erottimena. Jokin toinen erotinmerkki (huom. ei useita merkkejä) voidaan määritellä valitsimella -d

cut -d '.' -f 2- -s foobar

Tässä erottimena on piste ja tiedostosta foobar näytetään kaikki kentät kentästä 2 viimeiseen kenttään. Valitsimella -s voidaan estää erottimia sisältämättömien rivien tulostus.

Näytetään tiedostosta testi vain merkit 6-10

cut -c 6-10 testi

mikä tulostaa

bc      ij
ce      lm
gh      op

Mikäli syötteessä ei ole Unicode-merkkejä (tai muita useampitavuisia merkkejä), tekee tavuja määrittelevä valitsin -b saman kuin merkkejä määrittelevä -c.

Valitsimella --complement voidaan tulostus määritellä käänteiseksi, ts syötteestä tulostetaan kaikki paitsi määritelty alue. Valitsimella --output-delimiter voidaan määrittää tulosteessa näytettäville osioille erotin. Komento

cut -b 6-10 testi --complement --output-delimiter '*'

tulostaisi toisin sanoen

123     a*k
456     d*n
789     f*q

Mikäli cutille annettu tiedostonnimi on - tai sitä ei ole, käytetään standardisisääntuloa (STDIN).

Katso myös