Awk

Kako preskočiti prvo vrstico datoteke z uporabo 'awk'

Kako preskočiti prvo vrstico datoteke z uporabo 'awk'

V Linuxu se ukaz 'awk' uporablja na različne načine. Na primer, z njo lahko natisnete vsebino besedilne datoteke. Prva vrstica številnih besedilnih datotek vsebuje naslov datoteke, včasih pa je treba pri tiskanju vsebine datoteke prvo vrstico preskočiti. V tej vadnici vam bomo pokazali, kako to narediti z ukazom 'awk'.

Ustvarite besedilno datoteko

Če želite nadaljevati s to vadnico, ustvarite besedilno datoteko, ločeno z zavihki seznam knjig.txt z naslednjo vsebino. Ta datoteka vsebuje seznam knjig z ustreznimi avtorji. V tej vadnici vam bomo pokazali, kako natisniti različne dele te datoteke po preskoku prve vrstice.

Kibernetska varnost z bashom Paulom Tronconejem, Carlom Albingom
Ukazna vrstica Kung Fu Jason Cannon
Linux ukazna vrstica Travis Booth
Bash v preprostih korakih Mike McGrath
Unix v preprostih korakih Mike McGrath

Primer 1: Preskočite prvo vrstico datoteke z uporabo NR in operatorja '>'

Spremenljivka NR označuje število zapisov v datoteki. Naslednji ukaz 'awk' s spremenljivko NR preskoči prvo vrstico datoteke. Vrednost NR je 1 za prvo vrstico. Naslednji ukaz bo natisnil vrstice, za katere je vrednost NR večja od 1.

$ cat booklist.txt
$ awk '(NR> 1)' knjižni seznam.txt

Naslednji izhod bo prikazan po zagonu zgornjih ukazov. Izhod vključuje vse vrstice, razen prve vrstice datoteke.

Primer 2: Preskočite prvo vrstico z uporabo NR in znaka '!= 'operator

Naslednji ukaz 'awk' je podoben tistemu v prejšnjem primeru. Vendar pa!= 'namesto'> 'je uporabljen operator primerjave.

$ cat booklist.txt
$ awk 'NR!= 1 'seznam knjig.txt

Naslednji izhod bo prikazan po zagonu zgornjih ukazov. Rezultat prikazuje vse vrstice, razen prve vrstice datoteke.

Primer 3: Preskočite prvo vrstico datoteke z uporabo pogojnega stavka

Naslednji ukaz 'awk' bo natisnil vrstice datoteke, če je izjava if resnična. Tukaj bo stavek if resničen le, če vrednost NR ni enaka 1.

$ cat booklist.txt
$ awk 'if (NR!= 1) print 'knjižni seznam.txt

Naslednji izhod bo prikazan po zagonu zgornjih ukazov. Rezultat vključuje vse vrstice, razen prve vrstice datoteke.

4. primer: Natisnite imena knjig iz datoteke, vendar preskočite prvo vrstico

V tem primeru se za tiskanje vseh imen knjig, razen prvega, uporabljata dva ukaza 'awk'. Ukaz 'awk' bo prebral prvi stolpec iz datoteke na podlagi ločila polja (\ t) in poslal izhod v drugi ukaz 'awk'. Drugi ukaz 'awk' bo natisnil želeni izhod.

$ cat booklist.txt
$ awk -F "\ t" 'print $ 1' seznam knjig.txt | awk 'NR!= 1 print '

Naslednji izhod bo prikazan po zagonu zgornjih ukazov. Na izhodu so prikazana vsa imena knjig, razen imen prve knjige.

Primer 5: Formatirajte vsebino datoteke po preskoku prve vrstice

Možnost '-F', spremenljivka NR in funkcija printf se uporabljajo v naslednjem ukazu 'awk' za ustvarjanje formatiranega izhoda po preskoku prve vrstice. Ukaz bo vsebino datoteke razdelil na stolpce glede na \ t, printf pa bo natisnil prvi in ​​drugi stolpec, ko bo vrednost NR vsaj 2.

$ cat booklist.txt
$ awk -F '\ t' 'NR> = 2 printf "% 30s% 20s \ n", $ 1, $ 2' seznam knjig.txt

Naslednji izhod bo prikazan po zagonu zgornjih ukazov. Rezultat prikazuje formatirano vsebino datoteke, razen prve vrstice datoteke.

Primer 6: Po preskoku prve vrstice s pomočjo NR in NF natisnite imena knjig

Naslednji ukaz 'awk' uporablja možnost '-F' in NR in NF za tiskanje imen knjig po preskoku prve knjige. Možnost '-F' se uporablja za ločevanje vsebine baze datotek na \ t. NR se uporablja za preskok prve vrstice, NF pa samo za tiskanje prvega stolpca.

$ cat booklist.txt
$ awk -F '\ t' 'NR> 1 && NF = 1' seznam knjig.txt

Naslednji izhod bo prikazan po zagonu zgornjih ukazov. Rezultat vključuje vsa imena knjig v datoteki, razen imen prve knjige.

7. primer: Natisnite oblikovana imena avtorjev po preskoku prve vrstice

Naslednji ukaz 'awk' uporablja možnost '-F' in pogojni stavek za tiskanje imen avtorjev po preskoku prve vrstice. Tu se vrednost NR uporablja v pogoju if. Tu bo namesto vsebine iz prve vrstice kot prva vrstica natisnjeno »Ime avtorja: \ n \ n«. Imena avtorjev iz datoteke bodo natisnjena za druge vrednosti NR.

$ cat booklist.txt
$ awk -F '\ t' 'if (NR == 1) printf "\ nIme avtorja: \ n \ n"; sicer natisni "% s \ n", $ 2 'seznam knjig.txt

Naslednji izhod bo prikazan po zagonu zgornjih ukazov. Na izhodu je z novo vrstico prikazano besedilo »Ime avtorja« in natisnjena so vsa imena avtorjev, razen prvega.

Zaključek

Prvo vrstico datoteke lahko preskočite z različnimi ukazi Linux. Kot je prikazano v tej vadnici, lahko z ukazom 'awk' preskočite prvo vrstico datoteke. Omeniti je mogoče, da lahko spremenljivko NR ukaza 'awk' preskočite prvo vrstico katere koli datoteke.

S pomočjo gumba X-Mouse Button Control različno prilagodite gumbe miške za različno programsko opremo
Mogoče potrebujete orodje, ki bi lahko spremenilo nadzor miške z vsako aplikacijo, ki jo uporabljate. V tem primeru lahko preizkusite aplikacijo z ime...
Microsoft Sculpt Touch Wireless Mouse Review
Pred kratkim sem prebral o Microsoftov kiparski dotik brezžično miško in se odločil za nakup. Potem ko sem ga nekaj časa uporabljal, sem se odločil, d...
Zaslonska sledilna ploščica in kazalec miške AppyMouse za tablične računalnike Windows
Uporabniki tabličnih računalnikov pogosto zgrešijo miškin kazalec, še posebej kadar običajno uporabljajo prenosne računalnike. Pametni telefoni in tab...