Eexempel -1: Definiera och skriva ut variabel
kommandot 'awk' använder alternativet '-v' för att definiera variabeln. I detta exempel är myvar variabel definieras i kommandot 'awk' för att lagra värdet, “AWK-variabel” som skrivs ut senare. Kör följande kommando från terminalen för att kontrollera utdata.
$ eko | awk -v myvar = 'AWK-variabel' 'print myvar'Produktion:
Exempel - 2: Använd skalvariabel i awk med ett enda citat och dubbelt citat
Exemplet visar hur skalvariabeln kan användas 'awk' kommando. Här, en skalvariabel, myvar deklareras med värdet, “Linux-tips” i det första kommandot. '$' - symbolen används med ett skalvariabelnamn för att läsa värdet. Det andra kommandot läser variabeln, $ myval med ett enda citat (') och det tredje kommandot läser variabeln $ myvar med dubbelt citat (“) i uttalandet" awk ".
$ myvar = "Linux Tips"$ eko | awk -v awkvar = '$ myvar' 'skriv awkvar; '
$ eko | awk -v awkvar = "$ myvar" 'skriv ut awkvar; '
Produktion:
Det visas i utgången att värdet på $ myvar inte kan läsas när det bifogas med en enda offert (') och utdata är $ myvar. Värdet av $ myvar skrivs ut när den bifogas med ett dubbelt citat (“).
Exempel - 3: Läser ARGC-variabel i awk
ARGC-variabel används för att räkna det totala antalet kommandoradsargument. Tre variabler för kommandoradsargument (t1, t2, t3) skickas i följande awk-skript. Här är det totala antalet argument med skriptet 4. Kör skriptet från terminalen.
$ awk 'BEGIN print "Total arguments =", ARGC' t1 t2 t3Produktion:
Följande utdata visas efter körning av skriptet.
Exempel - 4: Läsa filinnehåll med argumentvariabler
Skapa en textfil med namnet kund.Text med följande innehåll för att öva detta exempel. Här separeras varje fält i filen med enstaka flik Plats.
kund.Text
ID-namn103847 John Micheal
209485 Watson
974732 Mira Hossain
Awk-kommandot kan läsa varje fält från vilken textfil som helst genom argumentvariabler. Det finns två fält i kund.Text fil. Dessa är ID och namn. Följande skript skriver ut dessa två fält med argumentvariabler, $ 1 och $ 2 genom att separera två flik mellanslag. Kör skriptet från terminalen.
$ kattkund.Text$ kattkund.txt | awk 'print $ 1 "\ t \ t" $ 2;'
Produktion:
Följande utdata visas efter att ovanstående kommandon har körts.
Exempel 5: Använda inbyggd variabel, FS och fältseparatoralternativ med awk-kommando
FS-variabel används i awk-kommando som fältseparator. Mellanslag används som standardvärde för FS. Följande kommando läser filen kund.Text använder utrymme som fältseparator och skriver ut filinnehållet. Kör kommandot från terminalen.
$ awk FS-kund.TextProduktion:
Följande utdata visas efter körning av skriptet.
Awk-kommandot kan använda andra tecken som fältseparator genom att använda alternativet '-F'. Skapa en textfil med namnet produkt.Text med följande innehåll där ':' används som fältseparator.
produkt.Text
101: Tårta: $ 30102: Penna: $ 5
103: Tvål: $ 3
104: Schampo: $ 10
Det finns tre fält i filen, produkt.Text som innehåller produkt-id, namn och pris. Följande awk-kommando skriver bara ut det andra fältet på varje rad. Kör kommandona från terminalen.
$ kattprodukt.Text$ awk -F ':' 'skriv ut $ 2' produkt.Text
Produktion:
Här skrev det första kommandot ut innehållet i produkt.Text och det andra kommandot skrev endast ut det andra fältet i filen.
Exempel - 6: Använda inbyggd variabel, NR med awk-kommando
NR-variabeln används i kommandot awk för att räkna det totala antalet poster eller rader i en fil. Skapa en textfil med namnet studerande.Text för att testa funktionen hos denna variabel.
studerande.Text
Namn BatchterminJohannes 20 3
Mira 22 1
Ella 18
Charle 15 8
Följande awk-skript skriver ut de tre första raderna i produkt.Text fil. Här läggs ett villkor till med hjälp av NR-variabeln. Kommandot skriver ut de rader där NR-värdet är mindre än 4. Kör skriptet från terminalen.
Produktion:
Följande utdata visas efter körning av skriptet.
$ kattstudent.txt | awk 'NR < 4'
Exempel - 7: Använda inbyggd variabel, NF med awk-kommando
NF-variabel används i kommandot awk för att räkna det totala antalet fält i varje rad i en fil. Följande awk-skript tillämpas på filen, studerande.Text som skapades i föregående exempel. Manuset kommer att skriva ut dessa rader från studerande.Text fil där de totala fälten är mindre än 3. Kör kommandot från terminalen.
$ kattstudent.txt | awk 'NF < 3'Produktion:
Det finns bara en rad i filen där det totala antalet fält är mindre än 3 som skrivs ut som utdata.
Exempel - 8: Använda inbyggd variabel, OFS med awk-kommando
OFS-variabeln används i kommandot awk för att lägga till utmatningsfältavgränsare i utgången. produkt.Text filen används i detta exempel för att visa användningen av OFS-variabeln. ':' används som fältseparator i produkten.txt-fil. Följande awk-skript använde '->' som OFS-värde och det andra och tredje fältet i filen skrivs ut genom att lägga till denna separator. Kör kommandona från terminalen.
$ kattprodukt.Text$ awk -F ':' 'BÖRJA OFS = "->"; skriv ut $ 2, $ 3;' produkt.Text
Produktion:
Följande utskrift skrivs ut efter att kommandona har körts.
Slutsats:
De vanligaste användningarna av awk-variabler försöks förklara i denna handledning. Hoppas, läsaren kommer att kunna använda awk-variabler ordentligt i manuset efter att ha tränat denna handledning.