Leikkaa komento Linuxissa

Linux- ja Unix-järjestelmissä on monia apuohjelmia, joiden avulla voit käsitellä ja suodattaa tekstitiedostoja. cut on komentorivi-apuohjelma, jonka avulla voit leikata osia riveistä määritetyistä tiedostoista tai lähetetyistä tiedoista ja tulostaa tuloksen vakiotulosteeseen. Sitä voidaan käyttää viivan osien leikkaamiseen erottimen, tavun sijainnin ja merkin avulla.

Tässä artikkelissa näytetään, miten cut komento käytännön esimerkkien ja yksityiskohtaisten selitysten avulla yleisimmistä vaihtoehdoista.

Leikkauskomennon käyttäminen #

cut -syntaksi komento on seuraava:

Vaihtoehdot, jotka kertovat cut käyttämisestä erottimen, tavun sijainnin tai merkin, kun leikataan valitut osat, rivit ovat seuraavat:

Voit käyttää yhtä ja vain yhtä yllä luetelluista vaihtoehdoista.

Muut vaihtoehdot ovat :

  • -d (--delimiter) – Määritä erotin, jota käytetään oletusarvon sijasta ” TAB ”erotin.
  • --complement – Täydennä valintaa. Kun käytät tätä vaihtoehtoa, cut näyttää kaikki tavut, merkit, tai kentät paitsi se valittu.
  • -s (--only-delimited) – Oletuksena cut tulostaa rivit, joissa ei ole erotinmerkkiä. Kun tätä vaihtoehtoa käytetään, cut ei tulosta viivoja, jotka eivät sisällä erotimia.
  • --output-delimiter – Oletuskäyttäytyminen cut on käyttää tulonerotinta lähtöerottimena. Tämän vaihtoehdon avulla voit määrittää toisen ulostulomerkkijonon.

Komennolla cut voidaan hyväksyä nolla tai useampia syötettyjä FILE-nimiä. Jos FILE -kohtaa ei määritetä tai kun FILE on -, cut lukee vakiotulosta.

Argumentti LIST välitettiin -f , -b ja -c -vaihtoehdot voivat olla kokonaisluku, useita pilkulla erotettuja kokonaislukuja, kokonaislukualue tai useita pilkulla erotettuja kokonaislukualueita . Jokainen alue voi olla yksi seuraavista:

  • N N: ntenä oleva kenttä, tavu tai merkki alkaen 1.
  • N- N-kentästä, tavusta tai merkistä rivin loppuun.
  • N-M N: stä M-kenttään, tavuun tai merkkiin.
  • -M ensimmäisestä M-kenttään, tavuun tai merkkiin.

Kuinka leikata kentällä #

Leikattavien kenttien määrittämiseksi kutsutaan komento -f -vaihtoehdolla. Jos sitä ei ole määritetty, oletuserotin on ”TAB”.

Seuraavissa esimerkeissä käytämme seuraavaa tiedostoa. Kentät on erotettu sarkaimilla.

test.txt

Esimerkiksi ensimmäisen ja kolmannen käyttämäsi kentän näyttäminen:

Tai jos haluat näyttää 1. – 4. kentän:

Leikkaus erottimen perusteella #

Jos haluat leikata erottimen perusteella, kutsu komento -d -vaihtoehto, jota seuraa haluamasi erotin.

Esimerkiksi, jos haluat näyttää 1. ja 3. kentän käyttämällä erottimena ”:”, kirjoita:

Voit käyttää mitä tahansa yksittäistä merkkiä erottimena. Seuraavassa esimerkissä käytämme välilyöntiä erottimena ja tulostamme toisen kentän:

Kuinka täydentää valintaa #

Voit täydentää valintakenttäluetteloa käyttämällä --complement -vaihtoehtoa. Tämä tulostaa vain ne kentät, joita ei ole valittu -f -vaihtoehdolla.

Seuraava komento tulostaa kaikki kentät paitsi 1. ja 3.:

Lähdön erottimen määrittäminen #

Lähdön erottimen määrittämiseksi käytä --output-delimiter -vaihtoehto. Esimerkiksi, jos haluat määrittää ulostulonrajoitimen arvoksi _, käytät seuraavaa:

Kuinka leikata tavuilla ja merkeillä #

Ennen kuin jatkamme, tehdään ero tavujen ja merkkien välillä.

Yksi tavu on 8 bittiä ja voi edustaa 256 erilaista arvoa. Kun ASCII-standardi luotiin, se otti huomioon kaikki kirjaimet, numerot ja symbolit, joita tarvitaan englannin kanssa työskentelyyn. ASCII-merkkitaulukossa on 128 merkkiä, ja kutakin merkkiä edustaa yksi tavu.Kun tietokoneista alkoi tulla maailmanlaajuisesti käytettävissä, teknologiayritykset alkoivat ottaa käyttöön uusia merkkikoodauksia eri kielille. Kielillä, joissa on yli 256 merkkiä, yksinkertainen 1: 1-kartoitus ei ollut mahdollista. Tämä johtaa erilaisiin ongelmiin, kuten asiakirjojen jakamiseen tai verkkosivustojen selaamiseen, ja tarvittiin uusi Unicode-standardi, joka pystyy käsittelemään suurimman osan maailman kirjoitusjärjestelmistä. UTF-8 luotiin näiden ongelmien ratkaisemiseksi. UTF-8: ssa kaikkia merkkejä ei ole esitetty yhdellä tavulla. Merkit voidaan esittää 1 tavusta 4 tavuun.

-b (--bytes) -vaihtoehto kertoo komennon leikkaa osiot kustakin rivistä annettujen tavuasemien avulla.

Seuraavissa esimerkeissä käytämme merkkiä ü, joka vie 2 tavua.

Valitse viides tavu:

Valitse viides, yhdeksäs ja 13. tavu:

Valitse alue 1–5 tavusta:

Tämän artikkelin kirjoittaessasi cut -palvelun GNU coreutils -versiossa olevalla versiolla ei ole vaihtoehto leikata merkkejä. Kun käytät -c -vaihtoehtoa, cut käyttäytyy samalla tavalla kuin käytettäessä vaihtoehtoa -b.

Leikkaa esimerkkejä #

cut -komentoa käytetään yleensä yhdessä muiden komentojen kanssa putkiston kautta. Tässä on muutama esimerkki:

Hanki luettelo kaikista käyttäjistä #

Komennon getent passwd tulos lähetetään cut, joka tulostaa ensimmäisen kentän käyttämällä : -merkkiä.

Lähdössä näkyy luettelo kaikista järjestelmän käyttäjistä.

Näytä 10 yleisimmin käytettyä komentoa #

Seuraavassa esimerkissä käytetään cut stripata ensimmäiset 8 tavua history -komennon jokaisesta rivistä.

Päätelmä #

cut -komentoa käytetään valittujen kenttien näyttämiseen annettujen tiedostojen jokaisesta rivistä tai vakiotulosta.

Vaikka se on erittäin hyödyllinen, cut: llä on joitain rajoituksia. Se ei tue useamman kuin yhden merkin määrittelyä erottimena eikä se tue useita erotimia.

Vastaa

Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *