Example -1: Definirea și tipărirea variabilei
Comanda 'awk' folosește opțiunea '-v' pentru a defini variabila. În acest exemplu, myvar variabila este definită în comanda „awk” pentru a stoca valoarea, „Variabilă AWK” care este tipărit mai târziu. Rulați următoarea comandă de la terminal pentru a verifica ieșirea.
$ echo | awk -v myvar = 'Variabilă AWK' 'print myvar'Ieșire:
Exemplu - 2: Utilizarea variabilei shell în awk cu un ghilimel simplu și un ghilimel dublu
Exemplul arată cum variabila shell poate fi utilizată comanda „awk”. Aici, o variabilă shell, myvar este declarat cu valoarea, „Linux Hint” în prima comandă. Simbolul „$” este utilizat cu un nume de variabilă shell pentru a citi valoarea. A doua comandă citește variabila, $ myval cu un singur ghilimel (') și a treia comandă citește variabila $ myvar cu ghilimele duble („) în declarația„ awk ”.
$ myvar = "Sugestie Linux"$ echo | awk -v awkvar = '$ myvar' 'print awkvar; '
$ echo | awk -v awkvar = "$ myvar" 'print awkvar; '
Ieșire:
Se arată în ieșire că valoarea lui $ myvar nu poate fi citită atunci când este inclusă cu un singur ghilimel (') și ieșirea este $ myvar. Valoarea a $ myvar este tipărit când este atașat cu ghilimele duble („).
Exemplu - 3: Citirea variabilei ARGC în awk
Variabila ARGC este utilizată pentru a număra numărul total de argumente din linia de comandă. Trei variabile ale argumentelor din linia de comandă (t1, t2, t3) sunt transmise în următorul script awk. Aici, numărul total de argumente cu scriptul este 4. Rulați scriptul de la terminal.
$ awk 'BEGIN print "Total arguments =", ARGC' t1 t2 t3Ieșire:
Următoarea ieșire va apărea după rularea scriptului.
Exemplu - 4: Citirea conținutului fișierului prin variabile de argument
Creați un fișier text numit client.txt cu următorul conținut pentru a practica acest exemplu. Aici, fiecare câmp al fișierului este separat de câte un singur filă spaţiu.
client.txt
Nume ID103847 John Micheal
209485 Watson
974732 Mira Hossain
Comanda Awk poate citi fiecare câmp din orice fișier text prin variabile de argument. Există două câmpuri în client.txt fişier. Acestea sunt ID-ul și numele. Următorul script va imprima aceste două câmpuri după variabile de argument, 1 $ și 2 USD prin separarea a două filă spații. Rulați scriptul de la terminal.
client $ cat.txtclient $ cat.txt | awk 'print $ 1 "\ t \ t" $ 2;'
Ieșire:
Următoarea ieșire va apărea după executarea comenzilor de mai sus.
Exemplu- 5: Utilizarea variabilei încorporate, opțiunea FS și separatorul de câmp cu comanda awk
Variabila FS este utilizată în comanda awk ca separator de câmp. Spațiul este utilizat ca valoare implicită a FS. Următoarea comandă va citi fișierul client.txt folosind spațiul ca separator de câmp și tipăriți conținutul fișierului. Rulați comanda de la terminal.
$ awk client FS.txtIeșire:
Următoarea ieșire va apărea după rularea scriptului.
Comanda Awk poate utiliza alte caractere ca separator de câmp utilizând opțiunea „-F”. Creați un fișier text numit produs.txt cu următorul conținut unde „:” este folosit ca separator de câmp.
produs.txt
101: Tort: 30 USD102: Creion: 5 USD
103: Săpun: 3 USD
104: Șampon: 10 USD
Există trei câmpuri în fișier, produs.txt care conține codul produsului, numele și prețul. Următoarea comandă awk va imprima doar al doilea câmp al fiecărei linii. Rulați comenzile de la terminal.
$ cat produs.txt$ awk -F ':' 'print $ 2' produs.txt
Ieșire:
Aici, prima comandă a tipărit conținutul produs.txt iar a doua comandă a imprimat doar al doilea câmp al fișierului.
Exemplu - 6: Folosind variabila încorporată, NR cu comanda awk
Variabila NR este utilizată în comanda awk pentru a număra numărul total de înregistrări sau linii ale unui fișier. Creați un fișier text numit student.txt pentru a testa funcția acestei variabile.
student.txt
Nume Semestru lotIoan 20 3
Mira 22 1
Ella 18
Charle 15 8
Următorul script awk va imprima primele trei rânduri de produs.txt fişier. Aici, se adaugă o condiție utilizând variabila NR. Comanda va imprima acele linii în care valoarea NR este mai mică de 4. Rulați scriptul de la terminal.
Ieșire:
Următoarea ieșire va apărea după rularea scriptului.
$ cat student.txt | awk 'NR < 4'
Exemplu - 7: Folosind variabila încorporată, NF cu comanda awk
Variabila NF este utilizată în comanda awk pentru a număra numărul total de câmpuri din fiecare linie a unui fișier. Următorul script awk este aplicat pentru fișier, student.txt care este creat în exemplul anterior. Scriptul va imprima acele linii din student.txt în care câmpurile totale sunt mai mici de 3. Rulați comanda de la terminal.
$ cat student.txt | awk 'NF < 3'Ieșire:
Există doar o singură linie în fișier, unde numărul total de câmpuri este mai mic de 3, care este tipărit ca ieșire.
Exemplu - 8: Folosind variabila încorporată, OFS cu comandă awk
Variabila OFS este utilizată în comanda awk pentru a adăuga separator de câmp de ieșire în ieșire. produs.txt fișierul este utilizat în acest exemplu pentru a arăta utilizarea variabilei OFS. „:” este utilizat ca separator de câmp în produs.fișier txt. Următorul script awk a folosit „->” ca valoare OFS și, al doilea și al treilea câmp al fișierului se vor imprima adăugând acest separator. Rulați comenzile de la terminal.
$ cat produs.txt$ awk -F ':' 'BEGIN OFS = "->"; print $ 2, $ 3;' produs.txt
Ieșire:
Următoarea ieșire se va imprima după executarea comenzilor.
Concluzie:
Cele mai frecvente utilizări ale variabilelor awk sunt încercate să explice în acest tutorial. Sper că cititorul va putea utiliza variabilele awk în mod corespunzător în script după ce va practica acest tutorial.