Awk

Kako ispisati prvi ili zadnji stupac ili oboje pomoću 'awk'

Kako ispisati prvi ili zadnji stupac ili oboje pomoću 'awk'

Linuxova naredba "awk" moćan je uslužni program za različite operacije nad tekstualnim datotekama, poput pretraživanja, zamjene i ispisa. Jednostavan je za uporabu s tabličnim podacima jer automatski dijeli svaki redak u polja ili stupce na temelju separatora polja. Kada radite s tekstualnom datotekom koja sadrži tablične podatke i želite ispisati podatke određenog stupca, tada je najbolja opcija naredba 'awk'. U ovom uputstvu pokazat ćemo vam kako ispisati prvi stupac i / ili zadnji stupac retka ili tekstualne datoteke.

Ispišite prvi stupac i / ili zadnji stupac izlaza naredbe

Mnoge Linux naredbe poput naredbe 'ls' generiraju tablične izlaze. Ovdje ćemo vam pokazati kako ispisati prvi stupac i / ili zadnji stupac iz izlaza naredbe 'ls -l'.

Primjer 1: Ispišite prvi stupac izlaza naredbe

Sljedeća naredba 'awk' ispisat će prvi stupac s izlaza naredbe 'ls -l'.

$ ls -l
$ ls -l | awk 'ispis $ 1'

Sljedeći će se izlaz dobiti nakon izvršavanja gornjih naredbi.

Primjer 2: Ispišite zadnji stupac izlaza naredbe

Sljedeća naredba 'awk' ispisat će zadnji stupac s izlaza naredbe 'ls -l'.

$ ls -l
$ ls -l | awk 'ispiši $ NF'

Sljedeći će se izlaz dobiti nakon izvršavanja gornjih naredbi.

Primjer 3: Ispišite prvi i zadnji stupac izlaza naredbe

Sljedeća naredba 'awk' ispisat će prvi i posljednji stupac iz rezultata naredbe 'ls -l'.

$ ls -l
$ ls -l | awk 'ispis $ 1, $ NF'

Sljedeći će se izlaz dobiti nakon izvršavanja gornjih naredbi.

Ispišite prvi stupac i / ili zadnji stupac tekstualne datoteke

Ovdje ćemo vam pokazati kako pomoću naredbe 'awk' ispisati prvi stupac i / ili zadnji stupac tekstualne datoteke.

Stvorite tekstualnu datoteku

Da biste nastavili s ovim uputstvom, stvorite tekstualnu datoteku s imenom kupci.txt sa sljedećim sadržajem. Datoteka sadrži tri vrste korisničkih podataka: ime s ID-om, e-adresu i telefonski broj. Znak kartice (\ t) koristi se za odvajanje ovih vrijednosti.

Ime E-mail Telefon
Jonathon Bing - 1001 [e-pošta zaštićena] 01967456323
Micheal Jackson - 2006. [zaštićena e-poštom] 01756235643
Janifer Lopez - 3029 [e-pošta zaštićena] 01822347865
John Abraham - 4235 j [e-pošta zaštićena] 01590078452
Mir Sabbir - 2756 [e-mail zaštićen] 01189523978

Primjer 4: Ispis prvog stupca datoteke bez upotrebe separatora polja

Ako se u naredbi 'awk' ne koristi separator polja, tada se razmak koristi kao zadani separator polja. Sljedeća naredba 'awk' ispisat će prvi stupac pomoću zadanog separatora.

$ muški kupci.txt
$ awk 'print $ 1' kupci.txt

Sljedeći će se izlaz dobiti nakon izvršavanja gornjih naredbi. Imajte na umu da izlaz prikazuje samo ime kupca jer se razmak primjenjuje kao separator polja. Rješenje ovog problema prikazano je u sljedećem primjeru.

Primjer 5: Ispišite prvi stupac datoteke s graničnikom

Ovdje se \ t koristi kao separator polja za ispis prvog stupca datoteke. Opcija '-F' koristi se za postavljanje separatora polja.

$ muški kupci.txt
$ awk -F '\ t' 'print $ 1' kupci.txt

Sljedeći će se izlaz dobiti nakon izvršavanja gornjih naredbi. Sadržaj datoteke podijeljen je u tri stupca na temelju \ t. Stoga su ime i ID kupca ispisani kao prvi stupac. Ako želite ispisati ime kupca bez ID-a, prijeđite na sljedeći primjer.


Ako želite ispisati ime kupca bez id-a, tada morate koristiti '-' kao odvajač polja. Sljedeća naredba "awk" ispisat će ime kupca samo kao prvi stupac.

$ muški kupci.txt
$ awk -F '-' 'print $ 1' kupci.txt

Sljedeći će se izlaz dobiti nakon izvršavanja gornjih naredbi. Rezultat uključuje puna imena kupaca bez njihovih ID-ova.

Primjer 6: Ispišite zadnji stupac datoteke

Sljedeća naredba 'awk' ispisat će zadnji stupac kupaca.txt. Budući da se u naredbi ne koristi separator polja, razmak će se koristiti kao separator polja.

$ muški kupci.txt
Korisnici $ awk 'print $ NF'.txt

Sljedeći će se izlaz dobiti nakon izvršavanja gornjih naredbi. Posljednji stupac sadrži telefonske brojeve, kao što je prikazano u izlazu.

Primjer 7: Ispišite prvi i zadnji stupac datoteke

Sljedeća naredba "awk" ispisat će prvi i zadnji stupac kupaca.txt. Ovdje se kartica (\ t) koristi kao separator polja za dijeljenje sadržaja u stupce. Ovdje se kartica (\ t) koristi kao separator za izlaz.

$ muški kupci.txt
$ awk -F "\ t" 'print $ 1 "\ t" $ NF' kupci.txt

Sljedeći će se izlaz pojaviti nakon pokretanja gornjih naredbi. Sadržaj je podijeljen u tri stupca po \ t; prvi stupac sadrži ime i ID kupca, a drugi stupac sadrži telefonski broj. Prvi i zadnji stupac ispisuju se upotrebom \ t kao razdvajača.

Zaključak

Naredba 'awk' može se primijeniti na različite načine za dobivanje prvog stupca i / ili posljednjeg stupca iz bilo kojeg izlaza naredbe ili iz tabličnih podataka. Važno je napomenuti da je u naredbi potreban separator polja, a ako nije predviđen, onda se koristi prostor.

Kako prikazati OSD prekrivač u aplikacijama i igrama na cijelom zaslonu za Linux
Igranje igara preko cijelog zaslona ili upotreba aplikacija u režimu preko cijelog zaslona bez ometanja može vas odsjeći od relevantnih informacija o ...
Top 5 karata za hvatanje igara
Svi smo vidjeli i voljeli streaming reprodukcije na YouTubeu. PewDiePie, Jakesepticye i Markiplier samo su neki od najboljih igrača koji su zaradili m...
Kako razviti igru ​​na Linuxu
Prije deset godina malo je Linux korisnika predviđalo da će njihov omiljeni operativni sustav jednog dana biti popularna platforma za igranje komercij...