AWK – Perus-Esimerkkejä

AWK – Perus-Esimerkkejä

Mainokset

Tässä luvussa on kuvattu useita hyödyllisiä AWK-komentoja ja niiden asianmukaisia esimerkkejä. Harkitse tekstitiedostomerkkejä.txt voidaan käsitellä seuraavia sisältö −

1) Amit Physics 802) Rahul Maths 903) Shyam Biology 874) Kedar English 855) Hari History 89

Tulostus Sarake tai Kenttä

Voit opettaa AWK tulostaa vain tietyt sarakkeet-kenttään., Seuraava esimerkki osoittaa tämän.

Esimerkki

$ awk '{print $3 "\t" $4}' marks.txt

teloittaa tämän koodin, saat seuraavan tuloksen −

Lähtö

Physics 80Maths 90Biology 87English 85History 89

tiedoston markkaa.txt, kolmas sarake sisältää kohteen nimi ja neljäs sarake sisältää arvosanat saatu tietystä aiheesta. Tulostakaamme nämä kaksi saraketta AWK print-komennolla. Yllä olevassa esimerkissä, $3 ja $4 edustavat kolmannen ja neljännen kentät vastaavasti input ennätys.

tulostus kaikki linjat

oletuksena, AWK tulostaa kaikki linjat, jotka vastaavat kuvio.,

Esimerkki

$ awk '/a/ {print $0}' marks.txt

teloittaa tämän koodin, saat seuraavan tuloksen −

Lähtö

2) Rahul Maths 903) Shyam Biology 874) Kedar English 855) Hari History 89

yllä olevassa esimerkissä, me etsimme muodossa kuvio. Kun kuvio ottelu onnistuu, se suorittaa komennon kehon estää. Jos ei ole body block-oletustoiminto toteutetaan, joka on tulostaa ennätys. Näin ollen seuraava komento tuottaa saman tuloksen.

Esimerkki

$ awk '/a/' marks.txt

Tulostus Sarakkeita Kuvio

Kun kuvio ottelu onnistuu, AWK tulostaa koko ennätys oletuksena., Mutta voit ohjeistaa AWK tulostaa vain tiettyjä kenttiä. Seuraavassa esimerkissä tulostetaan esimerkiksi kolmas ja neljäs kenttä, kun kaavaottelu onnistuu.

Esimerkki

$ awk '/a/ {print $3 "\t" $4}' marks.txt

teloittaa tämän koodin, saat seuraavan tuloksen −

Lähtö

Maths 90Biology 87English 85History 89

Tulostus-Sarakkeessa Tahansa Järjestyksessä

Voit tulostaa pylväät missä tahansa järjestyksessä. Esimerkiksi seuraava esimerkki tulostaa neljännen sarakkeen, jota seuraa kolmas sarake.,

Esimerkki

$ awk '/a/ {print $4 "\t" $3}' marks.txt

suorittamalla edellä koodi, saat seuraavan tuloksen −

Lähtö

90 Maths87 Biology85 English89 History

Laskenta ja Tulostus Hyväksytty Malli

katsokaamme esimerkki, jossa voit laskea ja tulostaa useita riviä, joista kuvio ottelu onnistui.

Esimerkki

$ awk '/a/{++cnt} END {print "Count = ", cnt}' marks.txt

teloittaa tämän koodin, saat seuraavan tuloksen −

Lähtö

Count = 4

tässä esimerkissä, me kasvattaa arvon vasta, kun kuvio ottelu onnistuu ja me tulostaa tämän arvon LOPULTA estää., Huomaa, että muista ohjelmointikielistä poiketen muuttujan ei tarvitse ilmoittaa ennen sen käyttöä.

Tulostus Linjat yli 18 Merkkiä

Anna meille tulosta vain ne rivit, jotka sisältävät yli 18 merkkiä.

Esimerkki

$ awk 'length($0) > 18' marks.txt

teloittaa tämän koodin, saat seuraavan tuloksen −

Lähtö

3) Shyam Biology 874) Kedar English 85

AWK-tarjoaa sisäänrakennettu pituus funktio, joka palauttaa merkkijonon pituus. $0-muuttuja tallentaa koko rivin ja ilman korilohkoa tehdään oletustoiminto eli tulostustoiminto., Näin ollen, jos rivissä on yli 18 merkkiä, niin vertailu tulokset totta ja rivi saa painettu.

Mainokset

Vastaa

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