Siiski on olukordi, kus te ei kavatse kogu selle faili sisu lugeda, pigem on see seotud ainult konkreetse faili osaga. Sellises olukorras pole väga soovitatav lugeda tervet faili, kuna see võtab lisaruumi ja võtab ka töötlemiseks rohkem aega, pigem peaksite otse tabama selle faili selle osa. Selles artiklis püüame tutvustada erinevaid meetodeid, kuidas kasutada käsku „awk” viimase veeru printimiseks failist.
Käsu “awk” kasutamise viis failist viimase veeru printimiseks:
On kaks erinevat meetodit, mille abil saame failist viimase veeru printimiseks kasutada käsku „awk”. Kuigi neid kahte meetodit saab kasutada omavahel asendatult, sest need annavad lõpuks sama väljundi, on esimene meetod siiski sobivam olukorras, kus teate faili täpset veergude arvu ja teine meetod on kasulik, kui veergude koguarv pole teada. Vaatame mõlemat meetodit ükshaaval.
Märkus: mõlema meetodi demonstreerimiseks oleme kasutanud Linux Mint 20, kuid võite vabalt valida oma valitud Linuxi mis tahes maitse.
1. meetod: kui teate faili veergude koguarvu:
Seda meetodit saab kasutada, kui teate faili täpset veergude arvu e.g. 3, 5, 10 jne. Selle meetodi demonstreerimiseks tuleks järgmised sammud teha kindlaksmääratud järjekorras:
Looge oma kodukataloogis teie valitud nimega tekstifail. Selles stsenaariumis oleme seda nimetanud awk-ks.txt. Nüüd topeltklõpsake seda faili selle avamiseks ja tippige alloleval pildil näidatud andmed oma tekstifaili. Seal on kokku kolm erinevat veergu ja veerud on üksteisest eraldatud vahekaardiga. Võite ka sisestada mis tahes juhuslikud andmed enda valitud.
Pärast selle faili loomist peate selle salvestama ja sulgema. Nüüd käivitage terminal Linux Mint 20-s, klõpsates selle ikooni tegumiribal. Linux Mint 20 terminal on näidatud ka järgmisel pildil:
Nüüd tippige oma terminali allpool nimetatud käsk ja vajutage selle täitmiseks sisestusklahvi:
$ awk 'print $ ColNum' fail.txtSiin peate ColNumi asendama viimase veeru veerunumbriga. Näiteks on meie loodud tekstifailis kokku kolm veergu, mis tähendab, et viimase veeru veerunumber on 3. Kuna meie eesmärk on printida ainult selle faili viimane veerg, oleme ColNumi asendanud 3-ga. Alati, kui veeru numbrit jätkab sümbol „$“, tähendab see, et soovime juurde pääseda selle veeru väärtustele. Pealegi peate ka faili asendama oma tekstifaili täpse nimega. Meie puhul oli faili nimi awk.txt.
Niipea kui vajutate klahvi Enter, on kõik faili viimase veeru väärtused awk.txt ilmub teie terminali, nagu on näidatud järgmisel pildil. Käsk awk loeb seda veergu, printimise käsk vastutab selle väärtuste kuvamise eest terminalis.
2. meetod: kui faili veergude koguarv on teadmata:
Seda meetodit kasutatakse tavaliselt siis, kui te ei tea faili veergude koguarvu kohta. Selle meetodi abil faili viimase veeru printimiseks peate toimima järgmiselt
Kasutame sama tekstifaili, mille oleme loonud ülaltoodud meetodi jaoks. Kõik, mida me peame tegema, on terminali käivitamine ja seejärel selle tippimine järgmine käsk:
$ awk 'print $ (NF)' fail.txtSiin on NF muutuja, mille ülesandeks on failist viimase veeru selgesõnaline printimine. Näiteks kui failis on 10 või 20 või isegi rohkem veergu, kuid te ei tea nende täpset arvu ja soovite siiski juurde pääseda viimasele veerule, võib see muutuja teie jaoks väga kasulikuks osutuda. Jällegi peate asendama "fail" oma tekstifaili nimega. Kuna meie puhul on kasutatud sama faili kui meetodil nr 1, oleme selle faili asendanud.txt koos awk-ga.txt.
Pärast selle käsu sisestamist oma terminali peate selle käivitama, vajutades sisestusklahvi. Märkate, et selle käsu väljund on identne ülaltoodud meetodis kasutatud käsu väljundiga i.e. aastafaili sisaldava tekstifaili viimane veerg on terminali edukalt trükitud.
Järeldus:
Selles artiklis andsime teile juhised failist ainult viimase veeru printimiseks, kasutades samal ajal käsku "awk". Selles käsus on palju rohkem aspekte, mida saab üksikasjalikult uurida, st.e. seda käsku saab kasutada ka koos teiste erinevate käskudega teistsuguse väljundi renderdamiseks. Kuid tänase arutelu raames oli meie eesmärk ainult näidata selle kasutamist failist viimase veeru printimiseks. Tutvustasime teile kahte erinevat viisi sama asja tegemiseks. Nüüd sõltub täielikult teie olukorrast, millist neist meetoditest valite.