Jinsi ya Kusoma Uingizaji wa Awk kutoka STDIN kwenye Linux - Sehemu ya 7


Katika sehemu zilizopita za safu ya zana ya Awk, tuliangalia pembejeo za usomaji kutoka kwa faili, lakini vipi ikiwa ungependa kusoma ingizo kutoka kwa STDIN.

Katika Sehemu hii ya 7 ya mfululizo wa Awk, tutaangalia mifano michache ambapo unaweza kuchuja matokeo ya amri nyingine badala ya kusoma ingizo kutoka kwa faili.

Tutaanza na ls amri, katika mfano wa kwanza hapa chini, tunatumia matokeo ya dir -l amri kama pembejeo kwa Awk kuchapisha jina la mtumiaji, jina la kikundi na faili anazomiliki sasa. saraka:

# dir -l | awk '{print $3, $4, $9;}'

Angalia mfano mwingine ambapo tunaajiri misemo ya awk, hapa, tunataka kuchapisha faili zinazomilikiwa na mtumiaji wa mizizi kwa kutumia usemi kuchuja kamba kama ilivyo kwa amri ya awk hapa chini:

# dir -l | awk '$3=="root" {print $1,$3,$4, $9;} '

Amri iliyo hapo juu inajumuisha (==) opereta ulinganisho ili kutusaidia kuchuja faili katika saraka ya sasa ambayo inamilikiwa na mtumiaji wa mizizi. Hii inafanikiwa kwa kutumia usemi $3==”mzizi”.

Wacha tuangalie mfano mwingine wa ambapo tunatumia opereta ya kulinganisha ya awk ili kulinganisha kamba fulani.

Hapa, tumetumia matumizi ya paka kutazama yaliyomo kwenye faili iitwayo tecmint_deals.txt na tunataka kutazama matoleo ya aina ya Tech pekee, kwa hivyo tutatekeleza amri zifuatazo:

# cat tecmint_deals.txt
# cat tecmint_deals.txt | awk '$4 ~ /tech/{print}'
# cat tecmint_deals.txt | awk '$4 ~ /Tech/{print}'

Katika mfano hapo juu, tumetumia thamani ~ /pattern/ opereta kulinganisha, lakini kuna amri mbili za kujaribu na kuleta kitu muhimu sana.

Unapotumia amri na muundo wa teknolojia hakuna kitu kinachochapishwa kwa sababu hakuna toleo la aina hiyo, lakini kwa Tech, unapata matoleo ya aina ya Tech.

Kwa hivyo kuwa mwangalifu kila wakati unapotumia opereta hii ya kulinganisha, ni nyeti kama tulivyoona hapo juu.

Unaweza kutumia pato la amri nyingine kila wakati badala yake kama ingizo la awk badala ya kusoma maandishi kutoka kwa faili, hii ni rahisi sana kama vile tumeangalia katika mifano hapo juu.

Natumai mifano ilikuwa wazi vya kutosha kwako kuelewa, ikiwa una wasiwasi wowote, unaweza kuelezea kupitia sehemu ya maoni hapa chini na kumbuka kuangalia sehemu inayofuata ya safu hiyo ambapo tutaangalia vipengele vya awk kama vile vigeu, misemo ya nambari na waendeshaji kazi.