Otu esi eji Awk bipụta ubi na kọlụm na faịlụ


N'akụkụ a nke usoro iwu Linux Awk anyị, anyị ga-eleba anya n'otu n'ime njirimara kachasị mkpa nke Awk, nke bụ nhazi ubi.

Ọ dị mma ịmara na Awk na-ekewa ahịrị ntinye aka na-akpaghị aka ka ọ bụrụ ubi, enwere ike kọwapụta mpaghara dị ka mkpụrụedemede mkpụrụedemede na-ekewapụ na mpaghara ndị ọzọ site na onye na-ekewapụta ubi dị n'ime.

Ọ bụrụ na ị maara Unix/Linux ma ọ bụ na-eme mmemme bash shei, mgbe ahụ, ị ga-amata ihe ngbanwe nke ime ubi (IFS) bụ. IFS ndabara na Awk bụ taabụ na oghere.

Nke a bụ otú echiche nkewapụ ubi si arụ ọrụ na Awk: mgbe ọ na-ezute akara ntinye, dị ka IFS si kọwaa, ihe odide mbụ bụ ubi otu, nke a na-enweta site na iji $1, nke abụọ nke mkpụrụedemede bụ mpaghara abụọ, nke a na-enweta ya site na iji $2, mkpụrụedemede atọ nke atọ bụ mpaghara atọ, nke a na-enweta site na iji $3 wee gaa n'ihu ruo na njedebe ikpeazụ nke agwa.

Iji ghọta ndezi ubi Awk nke ọma, ka anyị leba anya n'ihe atụ ndị dị n'okpuru:

Ọmụmatụ 1: Emepụtala m faịlụ ederede akpọrọ tecmintinfo.txt.

# vi tecmintinfo.txt
# cat tecmintinfo.txt

Mgbe ahụ site na ahịrị iwu, m na-agbalị ibipụta nke mbụ, nke abụọ na nke atọ site na faịlụ tecmintinfo.txt site na iji iwu dị n'okpuru:

$ awk '//{print $1 $2 $3 }' tecmintinfo.txt

TecMint.comisthe

Site na mmepụta dị n'elu, ị nwere ike ịhụ na a na-ebipụta mkpụrụedemede ndị sitere na mpaghara atọ mbụ dabere na IFS kọwara nke bụ oghere:

  1. A na-eji $1 nweta
  2. Agba nke bụ \TecMint.com.
  3. Agba abụọ nke bụ \bụ ka a na-enweta site na iji $2.
  4. Agba atọ nke bụ \the ka a na-enweta site na iji $3.

Ọ bụrụ na ị chọpụtala na mbipụta ebipụta, ụkpụrụ ubi anaghị ekewa ma otu a ka mbipụta si eme na ndabara.

Ka ilele mmepụta nke ọma na ohere n'etiti ụkpụrụ ubi, ị ga-agbakwunye onye ọrụ (,) dị ka ndị a:

$ awk '//{print $1, $2, $3; }' tecmintinfo.txt

TecMint.com is the

Otu ihe dị mkpa ị ga-arịba ama ma na-echeta mgbe niile bụ na iji ($) na Awk dị iche na iji ya na scripting shei.

N'okpuru shei scripting ($) ka a na-eji nweta uru nke mgbanwe mgbe ọ nọ na Awk ($) a na-eji ya naanị mgbe ịnweta ọdịnaya nke ubi mana ọ bụghị maka ịnweta ya uru nke mgbanwe.

Ọmụmatụ 2: Ka anyị leba anya n'otu ihe atụ ọzọ site na iji faịlụ nwere ọtụtụ ahịrị akpọrọ my_shoping.list.

No	Item_Name		Unit_Price	Quantity	Price
1	Mouse			#20,000		   1		#20,000
2 	Monitor			#500,000	   1		#500,000
3	RAM_Chips		#150,000	   2		#300,000
4	Ethernet_Cables	        #30,000		   4		#120,000		

Kwuru na ịchọrọ ibipụta naanị Unit_Price nke ihe ọ bụla dị na ndepụta ịzụ ahịa, ị ga-emerịrị iwu dị n'okpuru:

$ awk '//{print $2, $3 }' my_shopping.txt 

Item_Name Unit_Price
Mouse #20,000
Monitor #500,000
RAM_Chips #150,000
Ethernet_Cables #30,000

Awk nwekwara iwu printf nke na-enyere gị aka ịhazi mmepụta gị bụ ụzọ mara mma dịka ị nwere ike ịhụ mmepụta nke dị n'elu adịghị anya nke ọma.

Iji printf hazie mmepụta nke Ihe_Aha na Unit_Price:

$ awk '//{printf "%-10s %s\n",$2, $3 }' my_shopping.txt 

Item_Name  Unit_Price
Mouse      #20,000
Monitor    #500,000
RAM_Chips  #150,000
Ethernet_Cables #30,000

Nchịkọta

Ndozi ubi dị ezigbo mkpa mgbe ị na-eji Awk nzacha ederede ma ọ bụ eriri, ọ na-enyere gị aka ịnweta data dị na kọlụm na ndepụta. Na-echetakwa mgbe niile na iji ($) onye na-arụ ọrụ n'Awk dị iche na nke a na-eme n'edemede shei.

Enwere m olileanya na akụkọ ahụ nyere gị aka na maka ozi ọ bụla achọrọ ma ọ bụ ajụjụ, ị nwere ike biputere nkwupụta na ngalaba nkọwa.