20 awk primerov

20 Awk Examples



V operacijskem sistemu Linux obstaja veliko pripomočkov za iskanje in ustvarjanje poročila iz besedilnih podatkov ali datotek. Uporabnik lahko z uporabo ukazov awk, grep in sed z lahkoto izvede številne vrste iskanj, zamenjav in ustvarjanja poročil. awk ni samo ukaz. To je skriptni jezik, ki ga lahko uporabljate tako iz terminalske kot iz awk datoteke. Podpira spremenljivko, pogojni stavek, matriko, zanke itd., Tako kot drugi skriptni jeziki. Lahko prebere katero koli vsebino datoteke po vrstici in loči polja ali stolpce na podlagi določenega ločila. Podpira tudi regularni izraz za iskanje določenega niza v besedilni vsebini ali datoteki in ukrepa, če se najde kakšno ujemanje. Kako lahko uporabite ukaz in skript awk, je prikazano v tej vadnici z 20 uporabnimi primeri.

Vsebina:

  1. awk s printf
  2. awk za razdelitev na prazen prostor
  3. awk za zamenjavo ločila
  4. awk s podatki, ločenimi z zavihki
  5. awk s csv podatki
  6. awk regex
  7. awk neobčutljiv regex
  8. awk s spremenljivko nf (število polj)
  9. awk funkcija gensub ()
  10. awk s funkcijo rand ()
  11. awk uporabniško določena funkcija
  12. awk če
  13. awk spremenljivke
  14. awk matrike
  15. awk zanka
  16. awk za tiskanje prvega stolpca
  17. awk za tiskanje zadnjega stolpca
  18. awk z grep
  19. awk z datoteko skripta bash
  20. awk s sed

Uporaba awk s printf

printf () Funkcija se uporablja za oblikovanje vseh izhodov v večini programskih jezikov. To funkcijo lahko uporabljate z awk ukaz za ustvarjanje različnih vrst oblikovanih izhodov. Ukaz awk se večinoma uporablja za katero koli besedilno datoteko. Ustvarite besedilno datoteko z imenom zaposleni.txt s spodnjo vsebino, kjer so polja ločena z zavihkom (' t').







zaposleni.txt



1001 Janez sena 40000
1002 Jafar Iqbal 60000
1003 Meher Nigar 30000
1004 Jonny Liver 70000

Naslednji ukaz awk bo prebral podatke iz zaposleni.txt datoteko po vrstici in natisnite prvo datoteko po oblikovanju. Tukaj, %10s n pomeni, da bo izpis dolg 10 znakov. Če je vrednost izpisa manjša od 10 znakov, se presledki dodajo na sprednji strani vrednosti.



$ awk'{printf'%10s n', $ 1}'zaposlenega.txt

Izhod:





Pojdite na vsebino



awk za razdelitev na prazen prostor

Privzeti ločevalnik besed ali polj za razdelitev katerega koli besedila je presledek. Ukaz awk lahko vnese besedilno vrednost kot vnos na različne načine. Vneseno besedilo je poslano iz vrgel ven ukaz v naslednjem primeru. Besedilo, ' Rad programiram 'Bo privzeto razdeljen, prostor , tretja beseda pa bo natisnjena kot izhod.

$vrgel ven 'Rad programiram' | awk '{print $ 3}'

Izhod:

Pojdite na vsebino

awk za zamenjavo ločila

Ukaz awk lahko uporabite za spreminjanje ločila za katero koli vsebino datoteke. Recimo, da imate besedilno datoteko z imenom phone.txt z naslednjo vsebino, kjer se „:“ uporablja kot ločilo polja vsebine datoteke.

phone.txt

+123: 334: 889: 778
+880: 1855: 456: 907
+9: 7777: 38644: 808

Če želite spremeniti ločilnik, zaženite naslednji ukaz awk, ':' avtor: '-' na vsebino datoteke, phone.txt .

$ cat phone.txt
$ awk '$ 1 = $ 1' FS = ':' OFS = '-' phone.txt

Izhod:

Pojdite na vsebino

awk s podatki, ločenimi z zavihki

Ukaz awk ima veliko vgrajenih spremenljivk, ki se uporabljajo za branje besedila na različne načine. Dva izmed njih sta FS in OFS . FS je ločilo vnosnega polja in OFS je spremenljivke ločevalnika izhodnih polj. Uporaba teh spremenljivk je prikazana v tem razdelku. Ustvariti zavihek ločena datoteka z imenom input.txt z naslednjo vsebino za preizkušanje uporabe FS in OFS spremenljivke.

Input.txt

Skriptni jezik na strani odjemalca
Skriptni jezik na strani strežnika
Strežnik baz podatkov
Spletni strežnik

Uporaba spremenljivke FS z zavihkom

Naslednji ukaz bo razdelil vsako vrstico input.txt datoteko na podlagi zavihka (' t') in natisnite prvo polje vsake vrstice.

$awk '{print $ 1}' FS=' t'input.txt

Izhod:

Uporaba spremenljivke OFS z zavihkom

Naslednji ukaz awk bo natisnil datoteko 9th in 5th polja 'Ls -l' ukaz izhod z ločevalnikom zavihkov po tiskanju naslova stolpca Ime in Velikost . Tukaj, OFS spremenljivka se uporablja za oblikovanje izhoda z zavihkom.

$ls -
$ls - | awk -v OFS=' t' 'BEGIN {printf'%s t%s n ',' Name ',' Size '} {print $ 9, $ 5}'

Izhod:

Pojdite na vsebino

awk s podatki CSV

Vsebino katere koli datoteke CSV je mogoče razčleniti na več načinov z ukazom awk. Ustvarite datoteko CSV z imenom ' customer.csv 'Z naslednjo vsebino za uporabo ukaza awk.

customer.txt

ID, ime, e -poštni naslov, telefon
1, Sophia, [zaščiteno po e-pošti], (862) 478-7263
2, Amelia, [zaščiteno po e-pošti], (530) 764-8000
3, Emma, ​​[zaščiteno po e-pošti], (542) 986-2390

Branje enega polja datoteke CSV

'-F' možnost se uporablja z ukazom awk za nastavitev ločila za razdelitev vsake vrstice datoteke. Naslednji ukaz awk bo natisnil datoteko ime polje customer.csv mapa.

$mačkacustomer.csv
$awk -F ',' '{print $ 2}'customer.csv

Izhod:

Branje več polj s kombinacijo z drugim besedilom

Naslednji ukaz bo natisnil tri polja customer.csv s kombinacijo besedila naslova, Ime, e -pošta in telefon . Prva vrstica customer.csv datoteka vsebuje naslov vsakega polja. NE spremenljivka vsebuje številko vrstice datoteke, ko ukaz awk razčleni datoteko. V tem primeru NR spremenljivka se uporablja za izpustitev prve vrstice datoteke. Izhod bo pokazal 2nd, 3rdin 4thpolja vseh vrstic, razen prve vrstice.

$awk -F ',' 'NR> 1 {print' Name: '$ 2', Email: '$ 3', Phone: '$ 4}'customer.csv

Izhod:

Branje datoteke CSV s skriptom awk

skript awk lahko izvedete z zagonom datoteke awk. V tem primeru je prikazano, kako lahko ustvarite datoteko awk in jo zaženete. Ustvarite datoteko z imenom awkcsv.awk z naslednjo kodo. ZAČETI keyword se uporablja v skriptu za obveščanje ukaza awk za izvajanje skripta datoteke ZAČETI najprej del pred izvedbo drugih nalog. Tukaj ločilo polja ( FS ) se uporablja za opredelitev ločevalnika ločevanja in 2ndin 1stpolja bodo natisnjena glede na obliko, uporabljeno v funkciji printf ().

awkcsv.awk
ZAČETI{FS= ','} { printf '% 5s (% s) n',$2,$1}

Teči awkcsv.awk datoteko z vsebino customer.csv datoteko z naslednjim ukazom.

$awk -fawkcsv.awk customer.csv

Izhod:

Pojdite na vsebino

awk regex

Regularni izraz je vzorec, ki se uporablja za iskanje po katerem koli nizu v besedilu. Z uporabo regularnega izraza lahko zelo enostavno opravite različne vrste zapletenih nalog iskanja in zamenjave. V tem razdelku je prikazanih nekaj preprostih uporab regularnega izraza z ukazom awk.

Ujemajoč se liknastavljeno

Naslednji ukaz se bo ujemal z besedo Norec ali bool ali Kul z vhodnim nizom in natisnite, če se beseda sreča. Tukaj, Punčka se ne ujemajo in ne natisnejo.

$printf 'Norec nKul nPunčka nbool ' | awk '/[FbC] ool/'

Izhod:

Iskanje niza na začetku vrstice

'^' simbol se uporablja v regularnem izrazu za iskanje po katerem koli vzorcu na začetku vrstice. ' Linux ' beseda bo iskana na začetku vsake vrstice besedila v naslednjem primeru. Tu se dve vrstici začneta z besedilom, 'Linux «In ti dve vrstici bosta prikazani v izhodu.

$vrgel ven -In 'Linux je brezplačen za uporabo nGre za odprtokodno programsko opremo nLinuxHint je
priljubljeno spletno mesto za blog '
| awk '/^Linux/'

Izhod:

Iskanje niza na koncu vrstice

'$' simbol se uporablja v regularnem izrazu za iskanje po katerem koli vzorcu na koncu vsake vrstice besedila. ' Scenarij 'Beseda išče v naslednjem primeru. Tu dve vrstici vsebujeta besedo, Scenarij na koncu vrstice.

$vrgel ven -In 'Skript PHP nJavaScript nVizualno programiranje ' | awk '/Skript $/'

Izhod:

Iskanje z izpuščanjem določenega nabora znakov

'^' simbol označuje začetek besedila, ko se uporablja pred katerim koli vzorcem niza (' / ^… /') ali pred katerim koli naborom znakov, ki ga je izjavil ^ […] . Če je '^' simbol se uporablja znotraj tretjega oklepaja, [^…], potem bo definirani niz znakov v oklepaju v času iskanja izpuščen. Naslednji ukaz bo iskal vsako besedo, ki se ne začne 'F' ampak konča z ' ool '. Kul in bool bodo natisnjeni glede na vzorec in besedilne podatke.

$ printf 'Norec nKul nPunčka nbool ' |awk' / [^ F] ool /'

Izhod:

Pojdite na vsebino

awk neobčutljiv regex

Privzeti regularni izraz pri iskanju po katerem koli vzorcu v nizu izvaja razlikovanje med velikimi in malimi črkami. Iskanje, občutljivo na velike in male črke, lahko izvedete z ukazom awk z regularnim izrazom. V naslednjem primeru znižati() funkcija se uporablja za iskanje, ki ne razlikuje med velikimi in malimi črkami. Tu se prva beseda vsake vrstice vnesenega besedila pretvori v male črke z uporabo znižati() funkcijo in se ujemajo z vzorcem regularnega izraza. toupper () funkcijo lahko uporabite tudi v ta namen, v tem primeru mora biti vzorec definiran z veliko začetnico. Besedilo, opredeljeno v naslednjem primeru, vsebuje iskalno besedo, 'Splet «V dveh vrsticah, ki bodo natisnjene kot izhod.

$vrgel ven -In 'Oblikovanje spletnih strani nspletni razvoj nOkvir ' | awk 'tolower ($ 0) ~ /^web /;'

Izhod:

Pojdite na vsebino

awk s spremenljivko NF (število polj)

NF je vgrajena spremenljivka ukaza awk, ki se uporablja za štetje skupnega števila polj v vsaki vrstici vhodnega besedila. Ustvarite katero koli besedilno datoteko z več vrsticami in več besedami. input.txt tukaj je uporabljena datoteka, ki je ustvarjena v prejšnjem primeru.

Uporaba NF iz ukazne vrstice

Tu se prvi ukaz prikaže za prikaz vsebine input.txt file in drugi ukaz se uporablja za prikaz skupnega števila polj v vsaki vrstici datoteke z uporabo NF spremenljivka.

$ cat input.txt
$ awk '{print NF}' input.txt

Izhod:

Uporaba NF v datoteki awk

Ustvarite awk datoteko z imenom count.awk s spodaj navedenim scenarijem. Ko se bo ta skript izvajal s kakršnimi koli besedilnimi podatki, bo vsaka vrstica s skupnimi polji natisnjena kot izhod.

count.awk

{natisni $0}
{tiskanje'[Skupaj polj:'NF']'}

Zaženite skript z naslednjim ukazom.

$awk -fcount.awk input.txt

Izhod:

Pojdite na vsebino

awk funkcija gensub ()

getsub () je nadomestna funkcija, ki se uporablja za iskanje niza na podlagi določenega ločevalnika ali vzorca regularnega izraza. Ta funkcija je opredeljena v 'Gawk' paket, ki privzeto ni nameščen. Sintaksa te funkcije je podana spodaj. Prvi parameter vsebuje vzorec regularnega izraza ali ločilnik iskanja, drugi parameter vsebuje nadomestno besedilo, tretji parameter označuje, kako bo iskanje izvedeno, zadnji parameter pa besedilo, v katerem bo ta funkcija uporabljena.

Sintaksa:

gensub(regexp, zamenjava, kako[, tarča])

Za namestitev zaženite naslednji ukaz gawk paket za uporabo getsub () funkcijo z ukazom awk.

$ sudo apt-get install gawk

Ustvarite besedilno datoteko z imenom ' salesinfo.txt «Z naslednjo vsebino za vadbo tega primera. Tu so polja ločena z zavihkom.

salesinfo.txt

Mojih 700000
Tvoji 800000
Sre 750000
Zberite 200000
Pet 430000
Sat 820000

Za branje številskih polj datoteke salesinfo.txt datoteko in natisnite vsoto celotnega zneska prodaje. Tu tretji parameter 'G' označuje globalno iskanje. To pomeni, da bo vzorec iskan v celotni vsebini datoteke.

$awk '{x = gensub (' t ',' ',' G ', 2 USD); printf x '+'} END {tiskanje 0} 'salesinfo.txt| pr -

Izhod:

Pojdite na vsebino

awk s funkcijo rand ()

vrstica () Funkcija se uporablja za ustvarjanje poljubnega naključnega števila, večjega od 0 in manjšega od 1. Torej bo vedno ustvarilo ulomljeno število, manjše od 1. Naslednji ukaz bo ustvaril delno naključno število in pomnožil vrednost z 10, da dobimo število več kot 1. Za uporabo funkcije printf () se natisne ulomljeno število z dvema števkama za decimalno vejico. Če naslednji ukaz izvedete večkrat, boste vsakič dobili drugačen izhod.

$awk 'BEGIN {printf' Number is =%. 2f n ', rand ()*10}'

Izhod:

Pojdite na vsebino

awk uporabniško določena funkcija

Vse funkcije, uporabljene v prejšnjih primerih, so vgrajene. Lahko pa v svojem awk skriptu deklarirate uporabniško definirano funkcijo za opravljanje katere koli posebne naloge. Recimo, da želite ustvariti funkcijo po meri za izračun površine pravokotnika. Če želite to narediti, ustvarite datoteko z imenom ' area.awk «Z naslednjo pisavo. V tem primeru uporabniško definirana funkcija z imenom območje () je deklarirano v skriptu, ki izračuna površino na podlagi vhodnih parametrov in vrne vrednost območja. getline ukaz se tukaj uporablja za prevzem vnosa od uporabnika.

area.awk

# Izračunaj površino
funkcijoobmočje(višina,premer){
vrnitevvišina*premer
}

# Začne izvajanje
ZAČETI{
tiskanje'Vnesite vrednost višine:'
getline h< '-'
tiskanje'Vnesite vrednost širine:'
getline w< '-'
tiskanje'Območje ='območje(h,v)
}

Zaženite skript.

$awk -farea.awk

Izhod:

Pojdite na vsebino

awk če primer

awk podpira pogojne navedbe, tako kot drugi standardni programski jeziki. V tem razdelku so s tremi primeri prikazane tri vrste stavkov if. Ustvarite besedilno datoteko z imenom items.txt z naslednjo vsebino.

items.txt

HDD Samsung 100 dolarjev
Miška A4Tech
Tiskalnik HP 200 USD

Če je na primer preprosto :

naslednji ukaz bo prebral vsebino items.txt datoteko in preverite 3rd vrednost polja v vsaki vrstici. Če je vrednost prazna, se natisne sporočilo o napaki s številko vrstice.

$awk '{if ($ 3 ==' ') print' Polje cene manjka v vrstici 'NR}'items.txt

Izhod:

če-drugače primer:

Naslednji ukaz bo natisnil ceno izdelka, če je 3rdpolje obstaja v vrstici, sicer bo natisnilo sporočilo o napaki.

$ awk'{if ($ 3 ==' ') print' Polje cene manjka '
else print 'cena artikla je' $ 3} '
predmetov.txt

Izhod:

primer if-else-if:

Ko se naslednji ukaz izvede iz terminala, bo prevzel vnos od uporabnika. Vhodna vrednost se bo primerjala z vsakim pogojem if, dokler pogoj ni resničen. Če kateri koli pogoj izpolni, bo natisnil ustrezno oceno. Če se vhodna vrednost ne ujema z nobenim pogojem, tiskanje ne bo uspelo.

$awk 'BEGIN {print' Vnesite oznako: '
oznaka getline<'-'
if (oznaka> = 90) natisnite 'A+'
sicer, če (oznaka> = 80) natisnete 'A'
drugače, če (oznaka> = 70) natisnete 'B+'
else natisni 'Fail'} '

Izhod:

Pojdite na vsebino

awk spremenljivke

Izjava spremenljivke awk je podobna deklaraciji spremenljivke lupine. Pri branju vrednosti spremenljivke je razlika. Simbol '$' se uporablja z imenom spremenljivke za spremenljivko lupine za branje vrednosti. Za branje vrednosti pa ni treba uporabiti '$' s spremenljivko awk.

Z uporabo preproste spremenljivke:

Naslednji ukaz bo razglasil spremenljivko z imenom 'Spletno mesto' spremenljivki je dodeljena vrednost niza. Vrednost spremenljivke je natisnjena v naslednjem stavku.

$awk 'BEGIN {site =' LinuxHint.com '; natisni spletno mesto} '

Izhod:

Uporaba spremenljivke za pridobivanje podatkov iz datoteke

Naslednji ukaz bo iskal besedo 'Tiskalnik' v datoteki items.txt . Če se katera koli vrstica datoteke začne z 'Tiskalnik «, Potem bo shranila vrednost 1st , 2nd in 3rd polja v tri spremenljivke. ime in cena spremenljivke bodo natisnjene.

$ awk'/ Printer/ {name = $ 1; brand = $ 2; price = 3 $; print' item name = 'name;
natisni 'price price =' price} '
predmetov.txt

Izhod:

Pojdite na vsebino

awk matrike

Številčne in povezane matrike je mogoče uporabiti v awk. Izjava spremenljivke niza v awk je enaka drugim programskim jezikom. V tem razdelku so prikazane nekatere uporabe nizov.

Povezani niz:

Indeks matrike bo poljuben niz za asociativno matriko. V tem primeru je deklarirano in natisnjeno asociativno polje treh elementov.

$awk 'ZAČETI {
books ['Web Design'] = 'Učenje HTML 5';
books ['Web Programming'] = 'PHP in MySQL'
books ['PHP Framework'] = 'Učenje Laravela 5'
printf '%s n%s n%s n', knjige ['Spletno oblikovanje'], knjige ['Spletno programiranje'],
knjige ['PHP Framework']} '

Izhod:

Numerični niz:

Številčna matrika treh elementov se razglasi in natisne z ločevalnim zavihkom.

$ awk'ZAČETI {
število [0] = 80;
številka [1] = 55;
številka [2] = 76;

# element matrike tiskanja
printf 'Vrednosti niza: %d t%d t%d n', številka [0], številka [1], številka [2]; } '

Izhod:

Pojdite na vsebino

awk zanka

Awk podpira tri vrste zank. Uporabe teh zank so tukaj prikazane s tremi primeri.

Zanka medtem:

medtem ko bo zanka, ki se uporablja v naslednjem ukazu, petkrat ponavljala in izstopila iz stavka zanke za prekinitev.

$ awk 'ZAČNI {n = 1; while (n 5) prekinitev; natisni n; n ++}} '

Izhod:

Za zanko:

For zanka, ki se uporablja v naslednjem ukazu awk, bo izračunala vsoto od 1 do 10 in vrednost natisnila.

$awk 'BEGIN {sum = 0; za (n = 1; n<= 10; n++) sum=sum+n; print sum }'

Izhod:

Do-while zanka:

do-while zanka naslednjega ukaza natisne vsa parna števila od 10 do 5.

$awk 'BEGIN {counter = 10; do {if (counter%2 == 0) natisni števec; števec--}
while (števec> 5)} '

Izhod:

Pojdite na vsebino

awk za tiskanje prvega stolpca

Prvi stolpec katere koli datoteke lahko natisnete s spremenljivko $ 1 v awk. Če pa vrednost prvega stolpca vsebuje več besed, se natisne samo prva beseda prvega stolpca. Z uporabo posebnega ločila lahko prvi stolpec pravilno natisnete. Ustvarite besedilno datoteko z imenom students.txt z naslednjo vsebino. Tukaj prvi stolpec vsebuje besedilo dveh besed.

Študenti.txt

Kaniz Fatema 30thserija
Abir Hossain 35thserija
Janez Abraham 40thserija

Zaženite ukaz awk brez ločilnika. Natisnjen bo prvi del prvega stolpca.

$awk '{print $ 1}'students.txt

Zaženite ukaz awk z naslednjim ločilnikom. Natisnjen bo celoten del prvega stolpca.

$awk -F '\ s \ s' '{print $ 1}'students.txt

Izhod:

Pojdite na vsebino

awk za tiskanje zadnjega stolpca

$ (NF) spremenljivko lahko uporabite za tiskanje zadnjega stolpca katere koli datoteke. Naslednji ukazi awk bodo natisnili zadnji del in celoten del zadnjega stolpca the students.txt mapa.

$awk '{print $ (NF)}'students.txt
$awk -F '\ s \ s' '{print $ (NF)}'students.txt

Izhod:

Pojdite na vsebino

awk z grep

grep je še en uporaben ukaz Linuxa za iskanje vsebine v datoteki na podlagi katerega koli regularnega izraza. Kako se lahko ukazi awk in grep uporabljata skupaj, je prikazano v naslednjem primeru. oprijem ukaz se uporablja za iskanje podatkov o ID -ju zaposlenega, ' 1002 'Od zaposleni.txt mapa. Izhod ukaza grep bo poslan v awk kot vhodni podatki. 5% bonusa se bo štelo in natisnilo na podlagi plače ID -ja zaposlenega, ' 1002 ' po ukazu awk.

$mačkazaposleni.txt
$oprijem '1002'zaposleni.txt| awk -F ' t' '{print $ 2' bo prejel $ '($ 3*5)/100' bonus '}'

Izhod:

Pojdite na vsebino

awk z datoteko BASH

Tako kot drugi ukaz Linux se lahko tudi ukaz awk uporablja v skriptu BASH. Ustvarite besedilno datoteko z imenom customers.txt z naslednjo vsebino. Vsaka vrstica te datoteke vsebuje podatke o štirih poljih. To so ID stranke, ime, naslov in številka mobilnega telefona, ki so ločeni z ‘/ '.

customers.txt

AL4934 / Charles M Brunner / 4838 Beeghley Street, Huntsville, Alabama / 256-671-7942
CA5455 / Virginia S Mota / 930 Bassel Street, VALLECITO, California / 415-679-5908
IL4855 / Ann A Neale / 1932 Patterson Fork Road, Chicago, Illinois / 773-550-5107

Ustvarite bash datoteko z imenom item_search.bash z naslednjo pisavo. V skladu s tem skriptom bo vrednost stanja vzeta od uporabnika in poiskana customers.txt datoteko avtorja oprijem ukaz in ga kot vhod posreduje ukazu awk. Ukaz Awk se bo prebral 2nd in 4th polja vsake vrstice. Če se vhodna vrednost ujema s katero koli vrednostjo stanja customers.txt nato natisne strankino datoteko ime in telefonska številka , sicer bo sporočilo natisnilo Stranke ni bilo mogoče najti .

item_search.bash

#!/bin/bash
vrgel ven 'Vnesite ime države:'
prebratidržava
stranke=''oprijem '$ stanje'customers.txt| awk -F '/' '{print' Ime stranke: '$ 2,',
Mobilna številka: '$ 4}'
''
če [ '$ kupcev' !='' ];potem
vrgel ven $ kupcev
drugače
vrgel ven 'Stranke ni bilo mogoče najti'
biti

Če želite prikazati izhode, zaženite naslednje ukaze.

$mačkacustomers.txt
$bashitem_search.bash

Izhod:

Pojdite na vsebino

awk s sed

Drugo uporabno orodje za iskanje Linuxa je sed . Ta ukaz se lahko uporablja za iskanje in zamenjavo besedila katere koli datoteke. Naslednji primer prikazuje uporabo ukaza awk z sed ukaz. Tu bo ukaz sed iskal vsa imena zaposlenih, ki se začne z ' J «In kot vhod preide na ukaz awk. awk bo natisnil zaposlenega ime in ID po formatiranju.

$mačkazaposleni.txt
$sed -n '/J/p'zaposleni.txt| awk -F ' t' '{printf'%s (%s) n ', $ 2, $ 1}'

Izhod:

Pojdite na vsebino

Zaključek:

Z ustreznim filtriranjem podatkov lahko z ukazom awk ustvarite različne vrste poročil na podlagi vseh tabelarnih ali ločenih podatkov. Upam, da se boste lahko naučili, kako deluje ukaz awk, potem ko boste vadili primere, prikazane v tej vadnici.