Awk

20 primerov awk

20 primerov awk

20 primerov awk

V operacijskem sistemu Linux obstaja veliko uporabnih orodij za iskanje in ustvarjanje poročila iz besedilnih podatkov ali datoteke. Uporabnik lahko z uporabo ukazov awk, grep in sed z lahkoto opravi številne vrste iskanja, nadomeščanja in ustvarjanja poročil. awk ni le ukaz. To je skriptni jezik, ki ga lahko uporabljate tako v terminalu kot v datoteki awk. Podpira spremenljivko, pogojni stavek, matriko, zanke itd. kot drugi skriptni jeziki. Vrstico za vrstico lahko prebere katero koli vsebino datoteke 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 uporabljate ukaz in skript awk, je v 20 navodilih prikazano v tej vadnici.

Vsebina:

  1. awk s printf
  2. awk, da se razdeli na presledek
  3. awk za spremembo ločila
  4. awk s podatki, ločenimi z zavihki
  5. awk s csv podatki
  6. awk regularni izraz
  7. regularni izraz, neobčutljiv na velike črke
  8. awk s spremenljivko nf (število polj)
  9. awk gensub () funkcija
  10. awk s funkcijo rand ()
  11. awk uporabniško določena funkcija
  12. awk if
  13. spremenljivke awk
  14. matrike awk
  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 z printf

printf () Funkcija se uporablja za formatiranje katerega koli izhoda v večini programskih jezikov. To funkcijo lahko uporabljate z awk ukaz za generiranje različnih vrst formatiranih izhodov. ukaz awk, ki 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 bral podatke iz zaposleni.txt datoteko vrstico za vrstico in po formatiranju natisnite prvo datoteko. Tukaj, "% 10s \ n"Pomeni, da bo izhod dolg 10 znakov. Če je vrednost izhoda manjša od 10 znakov, bodo presledki dodani na sprednji strani vrednosti.

$ awk 'printf "% 10s \ n", $ 1' uslužbenec.txt

Izhod:

Pojdite na Vsebina

awk, da se razdeli na presledek

Privzeto ločilo besede ali polja za razdelitev katerega koli besedila je presledek. Ukaz awk lahko na različne načine sprejme besedilno vrednost kot vhod. Vhodno besedilo je preneseno iz odmev ukaz v naslednjem primeru. Besedilo, 'Všeč mi je programiranje'bo privzeto ločen, vesolja, in tretja beseda bo natisnjena kot izhod.

$ echo 'Všeč mi je programiranje' | awk 'print $ 3'

Izhod:

Pojdite na Vsebina

awk, da spremenite ločilo

z ukazom awk lahko spremenite ločilo za katero koli vsebino datoteke. Recimo, da imate besedilno datoteko z imenom telefon.txt z naslednjo vsebino, kjer se ':' uporablja kot ločilo polj vsebine datoteke.

telefon.txt

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

Zaženite naslednji ukaz awk, da spremenite ločilo, ':' avtor '-' do vsebine datoteke, telefon.txt.

$ mačji telefon.txt
$ awk '$ 1 = $ 1' FS = ":" OFS = "-" telefon.txt

Izhod:

Pojdite na Vsebina

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 od njih sta FS in OFS. FS je ločilo vnosnega polja in OFS je spremenljivka ločila izhodnega polja. Uporaba teh spremenljivk je prikazana v tem poglavju. Ustvariti zavihek ločena datoteka z imenom vhod.txt z naslednjo vsebino za preizkus uporabe FS in OFS spremenljivke.

Vhod.txt

Odjemalski skriptni jezik
Strežniški skriptni jezik
Strežnik zbirke podatkov
Spletni strežnik

Uporaba spremenljivke FS s tabulatorjem

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

$ awk 'print $ 1' FS = '\ t' vnos.txt

Izhod:

Uporaba spremenljivke OFS z jezičkom

Naslednji ukaz awk bo natisnil datoteko 9th in 5th polja v 'ls -l' izhod ukaza z ločilnikom zavihkov po tiskanju naslova stolpca “Ime"In"Velikost". Tukaj, OFS spremenljivka se uporablja za formatiranje izhoda z zavihkom.

$ ls -l
$ ls -l | awk -v OFS = '\ t' 'ZAČNITE printf "% s \ t% s \ n", "Ime", "Velikost" print $ 9, $ 5'

Izhod:

Pojdite na Vsebina

awk s podatki CSV

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

stranko.txt

Id, ime, e-pošta, telefon
1, Sophia, [e-pošta zaščitena], (862) 478-7263
2, Amelia, [e-pošta zaščitena], (530) 764-8000
3, Emma, ​​[e-pošta zaščitena], (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 področje stranka.csv mapa.

$ mačka stranka.csv
$ awk -F "," 'print $ 2' stranka.csv

Izhod:

Branje več polj s kombiniranjem z drugim besedilom

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

$ awk -F "," 'NR> 1 print "Ime:" $ 2 ", e-pošta:" $ 3 ", telefon:" $ 4 "stranka.csv

Izhod:

Branje datoteke CSV z uporabo skripta awk

skript awk lahko izvedemo 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 Ključna beseda se v skriptu uporablja za obveščanje ukaza awk za izvedbo skripta datoteke ZAČETI najprej del pred izvajanjem drugih nalog. Tukaj je ločilo polja (FS) se uporablja za definiranje ločevalnega ločila in 2nd in 1st polja se bodo natisnila v skladu z obliko, uporabljeno v funkciji printf ().

awkcsv.awk
ZAČNITE FS = "," printf "% 5s (% s) \ n", $ 2, $ 1

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

$ awk -f awkcsv.awk kupec.csv

Izhod:

Pojdite na Vsebina

awk regularni izraz

Regularni izraz je vzorec, ki se uporablja za iskanje poljubnega niza v besedilu. Različne vrste zapletenih nalog iskanja in zamenjave je mogoče zelo enostavno opraviti z uporabo regularnega izraza. V tem razdelku je prikazanih nekaj preprostih načinov uporabe regularnega izraza z ukazom awk.

Ujemajoči se nabor znakov

Naslednji ukaz se bo ujemal z besedo Norec ali bool ali Kul z vhodnim nizom in natisnite, če beseda najde. Tukaj, Lutka se ne ujema in ne natisne.

$ printf "Norec \ nOhrana \ nLutka \ nbool" | awk '/ [FbC] ool /'

Izhod:

Iskanje niza na začetku vrstice

'^' simbol se uporablja v regularnem izrazu za iskanje katerega koli vzorca na začetku vrstice. "Linux ' besedo bomo iskali na začetku vsake vrstice besedila v naslednjem primeru. Tu se dve besedi začneta z besedilom, 'Linux'in ti dve vrstici bosta prikazani v izhodu.

$ echo -e "Linux je brezplačen za uporabo \ n Je odprtokodna programska oprema \ nLinuxHint je
priljubljeno spletno mesto "| awk '/ ^ Linux /'

Izhod:

Iskanje niza na koncu vrstice

'$' simbol se uporablja v regularnem izrazu za iskanje katerega koli vzorca na koncu vsake vrstice besedila. "Skripta'beseda se išče v naslednjem primeru. Tu sta besedi besedi v dveh vrsticah, Skripta na koncu vrstice.

$ echo -e "PHP Script \ nJavaScript \ nVizualno programiranje" | awk '/ Script $ /'

Izhod:

Iskanje z izpuščanjem določenega nabora znakov

'^' simbol označuje začetek besedila, kadar je uporabljeno pred katerim koli vzorcem niza ('/ ^… /') ali pred katerim koli naborom znakov, ki ga prijavi ^ […]. Če je '^' v tretjem oklepaju se uporabi simbol, [^…], potem bo definirani nabor znakov znotraj oklepaja med iskanjem izpuščen. Naslednji ukaz bo poiskal katero koli besedo, ki se ne začne "F" vendar konča zool". Kul in bool bodo natisnjeni glede na vzorec in besedilne podatke.

$ printf "Norec \ nOhrana \ nLutka \ nbool" | awk '/ [^ F] ool /'

Izhod:

Pojdite na Vsebina

regularni izraz, neobčutljiv na velike črke

Privzeto regularni izraz pri iskanju katerega koli vzorca v nizu išče z razliko med velikimi in malimi črkami. Iskanje brez razlikovanja med velikimi in malimi črkami lahko izvedete z ukazom awk z regularnim izrazom. V naslednjem primeru, znižati() funkcija se uporablja za iskanje brez občutljivosti na črke. Tu bo prva beseda vsake vrstice vhodnega besedila z uporabo pretvorjena v male črke znižati() funkcijo in se ujema z vzorcem regularnega izraza. toupper () V ta namen se lahko uporabi tudi funkcija, v tem primeru mora biti vzorec definiran z veliko začetnico. Besedilo, opredeljeno v naslednjem primeru, vsebuje iskalno besedo, 'splet'v dveh vrsticah, ki se natisnejo kot izhod.

$ echo -e "Spletno oblikovanje \ nrazvoj spleta \ nOkvir" | awk 'tolower ($ 0) ~ / ^ splet /;'

Izhod:

Pojdite na Vsebina

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 poljubno besedilno datoteko z več vrsticami in več besedami. vhod.txt tukaj je uporabljena datoteka, ki je bila ustvarjena v prejšnjem primeru.

Uporaba NF iz ukazne vrstice

Tu se prvi ukaz uporablja za prikaz vsebine vhod.txt datoteka in drugi ukaz se uporablja za prikaz skupnega števila polj v vsaki vrstici datoteke, ki uporablja NF spremenljivka.

$ mačka vnos.txt
$ awk 'print NF' input.txt

Izhod:

Uporaba NF v datoteki awk

Ustvari datoteko awk z imenom štetje.awk s spodnjim scenarijem. Ko se bo ta skript izvedel s kakršnimi koli besedilnimi podatki, bo vsaka vsebina vrstice s skupnimi polji natisnjena kot izhod.

štetje.awk

natisni $ 0
print "[Skupaj polj:" NF "]"

Zaženite skript z naslednjim ukazom.

$ awk -f štetje.awk input.txt

Izhod:

Pojdite na Vsebina

awk gensub () funkcija

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

Sintaksa:

gensub (regularni izraz, zamenjava, kako [, cilj])

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

$ sudo apt-get install gawk

Ustvari besedilno datoteko z imenom 'prodajne informacije.txt'z naslednjo vsebino za vadbo tega primera. Tu so polja ločena z zavihkom.

prodajne informacije.txt

Pon 700000
Torek 800000
Sre 750000
Četrtek 200000
Pet 430000
Sobota 820000

Zaženite naslednji ukaz za branje številskih polj prodajne informacije.txt datoteko in natisnite celoten znesek prodaje. Tu tretji parameter "G" označuje globalno iskanje. To pomeni, da bomo vzorec iskali v celotni vsebini datoteke.

$ awk 'x = gensub ("\ t", "", "G", 2 USD); printf x "+" END print 0 'prodajne informacije.txt | bc -l

Izhod:

Pojdite na Vsebina

awk s funkcijo rand ()

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

$ awk 'BEGIN printf "Število je =%.2f \ n ", rand () * 10 '

Izhod:

Pojdite na Vsebina

awk uporabniško določena funkcija

Vse funkcije, ki so bile uporabljene v prejšnjih primerih, so vgrajene funkcije. Lahko pa v svojem skriptu awk prijavite uporabniško določeno funkcijo za izvajanje 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 'območje.awk'z naslednjim skriptom. V tem primeru uporabniško definirana funkcija z imenom območje () je prijavljen v skriptu, ki izračuna površino na podlagi vhodnih parametrov in vrne vrednost površine. getline Ukaz se tukaj uporablja za sprejem vnosa od uporabnika.

območje.awk

# Izračunaj površino
funkcijsko območje (višina, širina)
povratna višina * širina

# Zažene izvedbo
ZAČETI
print "Vnesite vrednost višine:"
getline h < "-"
print "Vnesite vrednost širine:"
getline w < "-"
natisni "Area =" območje (v, š)

Zaženite skript.

$ awk -f območje.awk

Izhod:

Pojdite na Vsebina

awk če primer

awk podpira pogojne stavke kot drugi standardni programski jeziki. V tem razdelku so na treh primerih prikazani trije tipi stavkov if. Ustvarite besedilno datoteko z imenom predmetov.txt z naslednjo vsebino.

predmetov.txt

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

Preprost primer:

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

$ awk 'if ($ 3 == "") print "V postavkah" NR "manjka polje za ceno.txt

Izhod:

primer if-else:

Naslednji ukaz bo natisnil ceno izdelka, čerd polje obstaja v vrstici, sicer bo natisnilo sporočilo o napaki.

$ awk 'if ($ 3 == "") print "Polje s ceno manjka"
sicer natisni "cena artikla je" $ 3.txt

Izhod:

primer if-else-if:

Ko se bo naslednji ukaz izvedel s terminala, bo uporabnik vnesel vnos. Vhodna vrednost se bo primerjala z vsakim pogojem if, dokler stanje ne bo resnično. Če kateri koli pogoj postane resničen, bo natisnil ustrezno oceno. Če se vhodna vrednost ne ujema z nobenim pogojem, tiskanje ne bo uspelo.

$ awk 'BEGIN print "Vnesite oznako:"
oznaka getline <  "-"
če (oznaka> = 90) natisnite "A +"
sicer če (oznaka> = 80) natisni "A"
sicer če (oznaka> = 70) natisnite "B +"
sicer natisni "Fail" '

Izhod:

Pojdite na Vsebina

spremenljivke awk

Izjava spremenljivke awk je podobna izjavi spremenljivke lupine. Razlika je v branju vrednosti spremenljivke. Simbol '$' se uporablja za ime spremenljivke spremenljivke lupine za branje vrednosti. Toda za branje vrednosti ni treba uporabiti '$' s spremenljivko awk.

Uporaba preproste spremenljivke:

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

$ awk 'BEGIN site = "LinuxHint.com "; mesto za tiskanje '

Izhod:

Uporaba spremenljivke za pridobivanje podatkov iz datoteke

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

$ awk '/ tiskalnik / name = $ 1; blagovna znamka = 2 $; cena = 3 $; natisni "item name =" name;
natisni "item price =" price 'elementov.txt

Izhod:

Pojdite na Vsebina

matrike awk

V awk se lahko uporabljajo tako številčni kot pripadajoči nizi. Izjava spremenljivke matrike v awk je enaka ostalim programskim jezikom. V tem razdelku je prikazano nekaj načinov uporabe nizov.

Asociativni niz: 

Indeks matrike bo kateri koli niz za asociativno matriko.  V tem primeru je deklarirana in natisnjena asociativna matrika treh elementov.

$ awk 'ZAČNI
books ["Web Design"] = "Učenje HTML 5";
books ["Web Programming"] = "PHP in MySQL"
books ["PHP Framework"] = "Učenje Laravel 5"
printf "% s \ n% s \ n% s \ n", knjige ["Spletno oblikovanje"], knjige ["Spletno programiranje"],
knjige ["PHP Framework"] '

Izhod:

Številska matrika:

Številska matrika treh elementov je deklarirana in natisnjena z ločevalnim jezičkom.

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

# elementov matrike za tiskanje
printf "Vrednosti niza:% d \ t% d \ t% d \ n", število [0], število [1], število [2]; '

Izhod:

Pojdite na Vsebina

awk zanka

Tri vrste zank podpira awk. Uporaba teh zank je tukaj prikazana na treh primerih.

Zanka while:

zanka while, ki se uporablja v naslednjem ukazu, se bo petkrat ponovila in izstopila iz zanke za izjavo break.

$ Awk 'ZAČNI n = 1; medtem ko (n <= 10) if(n > 5) odmor; natisni n; n ++ '

Izhod:

Za zanko:

Za zanko, ki se uporablja v naslednjem ukazu awk, bo izračunal vsoto od 1 do 10 in izpisal vrednost.

$ awk 'ZAČNI vsota = 0; za (n = 1; n <= 10; n++) sum=sum+n; print sum '

Izhod:

Do-while zanka:

zanka za izvajanje naslednjega ukaza bo natisnila vsa soda števila od 10 do 5.

$ awk 'ZAČNI števec = 10; naredi if (števec% 2 == 0) števec tiskanja; števec--
medtem (števec> 5) '

Izhod:

Pojdite na Vsebina

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 študentov.txt z naslednjo vsebino. Tu je v prvem stolpcu besedilo dveh besed.

Študenti.txt

Kaniz Fatema 30th serija
Abir Hossain 35th serija
Janez Abraham 40th serija

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

$ awk 'print $ 1' študentje.txt

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

$ awk -F '\\ s \\ s' 'print $ 1' študentje.txt

Izhod:

Pojdite na Vsebina

awk za tiskanje zadnjega stolpca

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

$ awk 'print $ (NF)' študentje.txt
$ awk -F '\\ s \\ s' 'print $ (NF)' študentje.txt

Izhod:

Pojdite na Vsebina

awk z grep

grep je še en uporaben ukaz Linuxa za iskanje vsebine v datoteki na podlagi katerega koli regularnega izraza. Kako je mogoče ukaze awk in grep uporabiti skupaj, je prikazano v naslednjem primeru. grep ukaz se uporablja za iskanje informacij po ID-ju zaposlenega, '1002'od zaposlenega.txt mapa. Izhod ukaza grep bo poslan kot awk kot vhodni podatki. 5% bonusa bo prešteto in natisnjeno na podlagi plače zaposlenega, "1002 ' z ukazom awk.

$ mačji uslužbenec.txt
$ grep '1002' uslužbenec.txt | awk -F '\ t' 'print $ 2 "bo dobil $" ($ 3 * 5) / 100 "bonus"'

Izhod:

Pojdite na Vsebina

awk z datoteko BASH

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

stranke.txt

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

Ustvari bash datoteko z imenom item_search.bash z naslednjim skriptom. V skladu s tem skriptom bo uporabniku odvzeta vrednost stanja in jo poiskala v stranke.txt datoteko avtor grep ukaz in ga kot vhod posreduje ukazu awk. Ukaz Awk bo prebral 2nd in 4th polja vsake vrstice. Če se vhodna vrednost ujema s katero koli vrednostjo stanja stranke.txt nato natisne strankino datoteko ime in telefonska številka, v nasprotnem primeru bo natisnilo sporočilo »Nobena stranka ni najdena".

item_search.bash

#!/ bin / bash
echo "Vnesite ime države:"
stanje branja
kupci = 'grep "$ state" stranke.txt | awk -F "/" 'print "Ime stranke:" $ 2, ",
Številka mobilnega telefona: "$ 4"
če ["$ kupcev" != ""]; potem
odmevajo $ kupci
drugače
echo "Nobena stranka ni najdena"
fi

Za prikaz naslednjih ukazov prikažite izhode.

$ mačjih strank.txt
$ bash item_search.bash

Izhod:

Pojdite na Vsebina

awk s sed

Drugo uporabno orodje za iskanje Linuxa je sed. Ta ukaz lahko uporabite za iskanje in zamenjavo besedila katere koli datoteke. Naslednji primer prikazuje uporabo ukaza awk z sed ukaz. Tukaj bo ukaz sed poiskal vsa imena zaposlenih, začenši z 'J'in kot vhod preide na ukaz awk. awk bo natisnil zaposlenega ime in ID po formatiranju.

$ mačji uslužbenec.txt
$ sed -n '/ J / p' uslužbenec.txt | awk -F '\ t' 'printf "% s (% s) \ n", $ 2, $ 1'

Izhod:

Pojdite na Vsebina

Zaključek:

Po pravilnem filtriranju lahko z ukazom awk ustvarite različne vrste poročil, ki temeljijo na poljubnih tabelarnih ali ločenih podatkih. Upam, da boste lahko izvedeli, kako deluje ukaz awk, potem ko ste vadili primere, prikazane v tej vadnici.

5 najboljših arkadnih iger za Linux
Dandanes so računalniki resni stroji, ki se uporabljajo za igre na srečo. Če ne boste mogli dobiti novega visokega rezultata, boste vedeli, kaj mislim...
Bitka za Wesnoth 1.13.6 Razvoj izdan
Bitka za Wesnoth 1.13.6, ki je izšel prejšnji mesec, je šesta razvojna izdaja v 1.13.x series in prinaša številne izboljšave, predvsem uporabniški vme...
Kako namestiti League Of Legends na Ubuntu 14.04
Če ste ljubitelj League of Legends, je to priložnost, da preizkusite League of Legends. Upoštevajte, da LOL podpira PlayOnLinux, če uporabljate Linux....