Linux cut -komento käyttöopas

Cut-komento Linuxissa on tehokas työkalu, joka mahdollistaa tiettyjen osien poimimisen tiedostoista tai syötteistä ilman alkuperäisen tiedoston muokkaamista.
Cut-komento Linuxissa on tehokas tekstinkäsittelytyökalu, jota käytetään tiettyjen osien poimimiseen tiedoston jokaiselta riviltä tai putkitetusta syötteestä. Se ei muokkaa alkuperäistä tiedostoa, vaan yksinkertaisesti lukee sisällön ja näyttää halutut osat standardilähtöön. Tässä artikkelissa tutkimme cut-komennon tarkoitusta Linuxissa ja havainnollistamme sen käyttöä käytännön esimerkkien avulla.
Ymmärtäminen cut-komennosta
Cut-komento on arvokas työkalu kaikille, jotka työskentelevät rakenteisen tekstin parissa, mahdollistaen tehokkaan tietojen manipuloinnin ja poimimisen Unix-pohjaisissa järjestelmissä. Se poimii osia riviltä perustuen tavu- tai merkkiasentoihin, erottimiin tai kenttiin. Tämä tekee siitä erityisen hyödyllisen tietojen suodattamisessa ja järjestämisessä shell-skripteissa ja komentorivitoiminnoissa. Se on myös hyödyllinen tehtävissä, kuten sarakkeiden hakeminen CSV-tiedostoista, merkkien rajaaminen tai lokitiedostojen analysointi. Vaikka sitä käytetään yleensä tiedostojen kanssa, cut-komento voi myös käsitellä muiden komentojen tulostetta putkistossa käytettäessä.
Cut-komennon perussyntaksi
Cut-komennolla on hyvin yksinkertainen syntaksi, joka käyttää vaihtoehtoja ja tiedoston nimeä. Näin se toimii:
cut [OPTIONS] [FILE]
Tässä OPTIONS antaa sinun hallita, kuinka cut-komento toimii. Voit valita kenttäerottimen (kuten pilkun), valita tietyt kentät, asettaa kenttäalueet, jättää huomiotta erottimettomat rivit jne. FILE on kohdetiedosto, josta haluat poimia tietoja. Cut-komento lukee standardisyötteestä, jos et määritä tiedostoa. Lisäksi voit määrittää useita tiedostoja; tällöin cut-komento käsittelee niitä yhtenä yhdistämällä sisällön ennen käsittelyä.
Yleisesti käytetyt vaihtoehdot
Cut-komento mahdollistaa tiettyjen tekstiosien poimimisen tiedostosta tai syötteestä. Voit kertoa, mitä poimia eri vaihtoehtojen avulla, kuten tavut, merkit tai kentät, ja asettamalla tietyn erottimen (delimiter). Tässä ovat yleiset vaihtoehdot:
- -f tai –fields=LIST: Valitsee tietyt kentät valitun erottimen perusteella.
- -b tai –bytes=LIST: Poimii tietyt tavut jokaiselta riviltä.
- -c tai –characters=LIST: Vetää ulos tietyt merkit jokaiselta riviltä.
- -d tai –delimiter: Asettaa mukautetun erottimen oletustabulaattorin sijasta.
- –complement: Näyttää kaiken paitsi valitut kentät, tavut tai merkit.
- -s tai –only-delimited: Ohitaa rivit, jotka eivät sisällä erotinta. Oletusarvoisesti tällaiset rivit sisältyvät.
- –output-delimiter: Antaa valita toisen erottimen tulostukseen. Oletusarvoisesti cut käyttää samaa erottinta kuin syöte.
Vaihtoehdot -f
, -b
ja -c
käyttävät LIST, jotta voidaan määrittää, mitä poimitaan, kuten kentät, tavut tai merkit. Voit määrittää seuraavat:
- Yhden numeron, kuten 2
- Useita numeroita pilkulla erotettuna, kuten 1,3,5
- Alueen, kuten 2-4 (mikä tarkoittaa poimimista 2:sta 4:ään)
N-
tarkoittaa, että aloitetaan paikasta N ja jatketaan loppuun-M
tarkoittaa, että aloitetaan alusta ja mennään kohtaan M
Miten cut-komento toimii Linuxissa
Käydään läpi käytännön esimerkkejä ymmärtääksemme, miten cut-komento toimii Linuxissa. Tätä varten luodaan ensin tiedosto nimeltä “mte.csv” käyttämällä echo-komentoa:
echo -e "empID,empName,empDesig\n101,Anees,Author\n102,Asghar,Manager\n103,Damian,CEO" > mte.csv
Tarkistetaan tiedoston sisältö käyttämällä cat-komentoa:
cat mte.csv
Tässä on tärkeää huomata, että cut-komento ei muokkaa tiedostoa, vaan vain näyttää valitun tulosteen sen perusteella, mitä pyydät.
Tietojen poimiminen merkeittäin
Käytä -c
-vaihtoehtoa yhdessä cut-komennon kanssa poimiaksesi merkkejä sijainnin mukaan:
cut -c 1,8 mte.csv
Tämä komento poimii ensimmäiset ja kahdeksannet merkit jokaiselta riviltä:
Poimiaksesi merkkejä tietyiltä paikoilta tai alueilta, voimme käyttää cut-komentoa näin.
Komento poimii kahdeksan ensimmäistä merkkiä jokaiselta riviltä:
cut -c 1-8 mte.csv
Tämä komento poimii kahdeksan merkkiä (1 ja 8 välillä) jokaiselta riviltä:
Poiminta Byyteittain
Voimme käyttää -b
-valintaa cut-komennossa poimiaksemme tiettyjä byttejä jokaiselta riviltä:
cut -b 1-3 mte.csv
Tämä komento poimii kolme ensimmäistä byttiä jokaiselta riviltä tiedostossa mte.csv
:
Poiminta Kenttinä (Sarakkeet)
Voit poimia koko kentän tiedostosta cut-komennolla. Tätä varten käytä -f
-valintaa -d
-valinnan kanssa alla olevan mukaisesti:
cut -d',' -f2 mte.csv
Tässä komennossa -d','
asettaa erottimeksi pilkun ja -f2
määrää cutin poimimaan toisen kentän jokaiselta riviltä tiedostossa mte.csv
:
Oman Erottimen Käyttö cutissa
Cut-komento käyttää oletuksena tabulaattoria erottimena. Jos kentät ovat erotettu muilla merkeillä, käytä -d
asettaaksesi oikean erottimen. Esimerkiksi voimme poimia viidennen sanan välilyönneillä erotetusta lauseesta seuraavasti:
echo "Hey! Geeks Welcome to Maketecheasier.com" | cut -d ' ' -f 5
Tiettyjen Kenttien Ohittaminen Poiminnassa
Voit jättää pois tiettyjä kenttiä poimiessasi tekstiä tiedostosta käyttämällä --complement
-valintaa cut-komennossa. Tämä vaihtoehto ohjeistaa cut-komentoa tulostamaan kaikki kentät lukuun ottamatta määritettyjä:
cut -d',' -f1 mte.csv --complement
Tämä komento ohittaa ensimmäisen sarakkeen ja palauttaa loput sisällöstä:
Oletuserottimen Muuttaminen Tuloksessa
Oletuksena cut-komento säilyttää syötteen erottimen tuloksessa, kun se poimii kenttiä. Voit kuitenkin muuttaa tulos-erotinta käyttämällä --output-delimiter
-valintaa kenttäpohjaisessa poiminnassa:
cut -d',' -f1-3 --output-delimiter='-' mte.csv
Tämä komento käyttää viivaa -
erottimena tulosteessa:
Cut Muut Kädelliset Linux-komennot
Voit käyttää cutia myös muiden Linux-komentojen kanssa putkisymbolin avulla. Esimerkiksi seuraava komento poimii ensimmäiset 5 merkkiä jokaiselta riviltä who
-komennon tulostuksesta:
who | cut -c 1-5
Seuraavassa esimerkissä käytämme cut-komentoa yhdessä headin kanssa näyttääksesi ensimmäiset kaksi riviä “mte.csv” tiedostosta ja poimia vain empName ja empDesig kentät:
head -n 2 mte.csv | cut -d ',' -f2,3
Epäsäännöllisten Tietomuotojen Hallinta Linux Cut Komennolla
Cut-komento toimii parhaiten, kun tiedot ovat siististi järjestettyjä ja sama erottimeen (kuten pilkku tai tabulaattori) erottaen jokaisen osan. Mutta jos tiedostossa on epätasaisia välejä tai sekoitettuja erottimia, cut ei välttämättä toimi hyvin yksinään. Tällaisissa tilanteissa on hyödyllistä ensin puhdistaa tiedot kuten tr
tai sed -komentojen avulla varmistaaksesi, että cut voi poimia oikeat osat.
Ylimääräisten Välejen Käsittely
Oletetaan, että tiedosto on nimeltään “mteData.txt”, jossa kentät ovat erotettu useilla välilyönneillä, kuten seuraavassa:
cat mteData.txt
Koska cut odottaa yhtä, johdonmukaista erottinta, voimme yksinkertaistaa välejä käyttämällä tr
ennen cutin soveltamista:
cat mteData.txt | tr -s ' ' | cut -d ' ' -f1-2
Tämä komento lukee “mteData.txt” sisällön, käyttää tr:ää korvatakseen useat väliyhdistelmät yhdellä väliä ja käyttää sitten cutia poimiakseen ensimmäiset kaksi kenttää, jotka on erotettu välilyönnillä:
Sekoitettujen Erottimien Käsittely
Jos tiedosto käyttää yhdistelmää tiloja ja pilkkuja erottimina, voimme normalisoida muotoilun käyttämällä sed
. Esimerkiksi tiedosto nimeltä “mteData1.txt” sisältää seuraavaa sisältöä:
cat mteData1.txt
Suositellaan, että...
sed-komentoa yhdessä cut-komennon kanssa käytetään korvaamaan kaikki välilyönnit pilkulla ja sitten purkamaan ensimmäiset ja kolmannet pilkuilla erotellut kentät:
sed 's/ /,/g' mteData1.txt | cut -d ',' -f1,3
Yhteenveto
Tässä artikkelissa tutustuimme Linuxin cut-komentoon, joka on hyödyllinen työkalu tiedon purkamiseen tiedostoista tai putkitehosta. Yksinkertaisten syntaksien avulla voit helposti saada merkkejä, tavuja tai kenttiä jakajasta riippuen. Näytimme myös, kuinka cut-komentoa voidaan käyttää yhdessä muiden komentojen, kuten tr, sed ja head, kanssa sotkuisen datan hallintaan ja tulosteen yksinkertaistamiseen. Olitpa sitten työskentelemässä CSV-tiedostojen, lokitietojen analysoinnin tai datan siivoamisen parissa, cut-komento on välttämätön työkalu tekstinkäsittelyyn Unix-tyyppisissä järjestelmissä.
Nyt kun olet lukenut Linux cut -komento käyttöopas loppuun, kutsumme sinut tutustumaan lisää Linux-kategoriaan. Löydät sieltä muita mielenkiintoisia artikkeleita, jotka laajentavat tietojasi ja pitävät sinut ajan tasalla. Älä lopeta lukemista ja löytämistä!
Vastaa