Kuinka ohittaa tiedoston ensimmäinen rivi käyttämällä `awk` -näppäintä

How Skip First Line File Using Awk



Linuxissa voi käyttää 'awk' -komentoa eri tavoin. Sitä voidaan käyttää esimerkiksi tekstitiedoston sisällön tulostamiseen. Monien tekstitiedostojen ensimmäinen rivi sisältää tiedoston otsikon, ja joskus ensimmäinen rivi on ohitettava, kun tulostetaan tiedoston sisältö. Tässä opetusohjelmassa näytämme, kuinka tämä tehtävä suoritetaan käyttämällä `awk` -komentoa.

Luo tekstitiedosto

Jos haluat jatkaa tämän opetusohjelman kanssa, luo sarkaimella erotettu tekstitiedosto nimeltä booklist.txt seuraavan sisällön kanssa. Tämä tiedosto sisältää luettelon kirjoista ja niiden tekijöistä. Tässä opetusohjelmassa näytämme, kuinka voit tulostaa tämän tiedoston eri osat ensimmäisen rivin ohittamisen jälkeen.





Kyberturvallisuus bash Paul Tronconen ja Carl Albingin kanssa

Komentorivi Kung Fu Jason Cannon

Linux -komentorivin Travis Booth

Bash helpossa vaiheessa Mike McGrath

Unix helpoissa vaiheissa Mike McGrath

Esimerkki 1: Ohita tiedoston ensimmäinen rivi käyttämällä NR: ää ja '>' -operaattoria

NR -muuttuja osoittaa tiedoston tietueiden määrän. Seuraava 'awk' -komento käyttää NR -muuttujaa ohittamaan tiedoston ensimmäisen rivin. NR -arvo on 1 ensimmäisellä rivillä. Seuraava komento tulostaa rivit, joiden NR -arvo on suurempi kuin 1.



$kissabooklist.txt

$awk '' (EI> 1) ''booklist.txt

Seuraava tulostus tuotetaan yllä olevien komentojen suorittamisen jälkeen. Tulos sisältää kaikki muut rivit kuin tiedoston ensimmäinen rivi.







Esimerkki 2: Ohita ensimmäinen rivi käyttämällä NR: ää ja '! =' -Operaattoria

Seuraava 'awk' -komento on samanlainen kuin edellisessä esimerkissä. Tässä käytetään kuitenkin vertausoperaattoria '! =' Eikä '>'.

$kissabooklist.txt

$awk 'NR! = 1'booklist.txt

Seuraava tulostus tuotetaan yllä olevien komentojen suorittamisen jälkeen. Tulos näyttää kaikki muut rivit paitsi tiedoston ensimmäisen rivin.



Esimerkki 3: Ohita tiedoston ensimmäinen rivi käyttämällä ehdollista lauseketta

Seuraava komento 'awk' tulostaa tiedoston rivit, jos if -lause on tosi. Tässä tapauksessa if -lause on totta vain, kun NR -arvo ei ole 1.

$kissabooklist.txt

$awk '{jos (NR! = 1) {print}}'booklist.txt

Seuraava tulostus tuotetaan yllä olevien komentojen suorittamisen jälkeen. Tulos sisältää kaikki rivit paitsi tiedoston ensimmäisen rivin.

Esimerkki 4: Tulosta kirjojen nimet tiedostosta, mutta ohita ensimmäinen rivi

Tässä esimerkissä käytetään kahta 'awk' -komentoa kaikkien kirjojen nimien tulostamiseen ensimmäistä lukuun ottamatta. Komento `awk` lukee tiedoston ensimmäisen sarakkeen kenttäerottimen ( t) perusteella ja lähettää tuloksen toiseen` awk` -komentoon. Toinen 'awk' -komento tulostaa halutun tuloksen.

$kissabooklist.txt

$awk -F '' t'' '{print $ 1}'booklist.txt| awk 'NR! = 1 painos}'

Seuraava tulostus tuotetaan yllä olevien komentojen suorittamisen jälkeen. Tulos näyttää kaikki kirjojen nimet paitsi ensimmäisen kirjan nimet.

Esimerkki 5: Muotoile tiedoston sisältö ensimmäisen rivin ohituksen jälkeen

'-F' -vaihtoehtoa, NR-muuttujaa ja printf-toimintoa käytetään seuraavassa 'awk' -komennossa muotoillun tuloksen luomiseksi ensimmäisen rivin ohituksen jälkeen. Komento jakaa tiedoston sisällön sarakkeisiin t: n perusteella ja printf tulostaa ensimmäisen ja toisen sarakkeen, kun NR -arvo on vähintään 2.

$kissabooklist.txt

$awk -F ' t' 'NR> = 2 {printf' %30s %20s n ', $ 1, $ 2}'booklist.txt

Seuraava tulostus tuotetaan yllä olevien komentojen suorittamisen jälkeen. Tulos näyttää tiedoston muotoillun sisällön, lukuun ottamatta tiedoston ensimmäistä riviä.

Esimerkki 6: Tulosta kirjojen nimet ensimmäisen rivin ohituksen jälkeen käyttämällä NR ja NF

Seuraava 'awk' -komento käyttää '-F' -vaihtoehtoa ja NR ja NF tulostamaan kirjojen nimet ensimmäisen kirjan ohituksen jälkeen. Vaihtoehtoa -F käytetään erottamaan tiedostopohjan sisältö t. NR käytetään ensimmäisen rivin ohittamiseen ja NF vain ensimmäisen sarakkeen tulostamiseen.

$kissabooklist.txt

$awk -F ' t' 'NR> 1 && NF = 1'booklist.txt

Seuraava tulostus tuotetaan yllä olevien komentojen suorittamisen jälkeen. Tulos sisältää kaikki tiedoston kirjat paitsi ensimmäisen kirjan nimen.

Esimerkki 7: Tulosta muotoillut tekijöiden nimet ensimmäisen rivin ohituksen jälkeen

Seuraava 'awk' -komento käyttää '-F' -vaihtoehtoa ja ehdollista lauseketta tulostamaan tekijöiden nimet ensimmäisen rivin ohituksen jälkeen. Tässä NR -arvoa käytetään if -ehdossa. Tässä kirjoittajan nimi: n n tulostetaan ensimmäisenä rivinä ensimmäisen rivin sisällön sijaan. Tekijän nimet tiedostosta tulostetaan muiden NR -arvojen osalta.

$kissabooklist.txt

$awk -F ' t' '{if (NR == 1) printf' nKirjoittajan nimi: n n '; else printf '%s n', $ 2} 'booklist.txt

Seuraava tulostus tuotetaan yllä olevien komentojen suorittamisen jälkeen. Tulosteessa näkyy teksti, tekijän nimi: ja uusi rivi, ja kaikki tekijöiden nimet tulostetaan ensimmäistä lukuun ottamatta.

Johtopäätös

Tiedoston ensimmäinen rivi voidaan ohittaa käyttämällä erilaisia ​​Linux -komentoja. Kuten tässä opetusohjelmassa esitetään, on olemassa erilaisia ​​tapoja ohittaa tiedoston ensimmäinen rivi käyttämällä `awk` -komentoa. Huomattavasti 'awk' -komennon NR -muuttujaa voidaan käyttää minkä tahansa tiedoston ensimmäisen rivin ohittamiseen.