Esi eme ka esemokwu gaa na akwukwọ edemede

Iwu, syntax na ihe atụ

Ị nwere ike ide edemede akwukwọ dịka nke na ọ na-enweta arụmụka akọwapụtara mgbe a na-akpọ edemede ahụ site na akara iwu ahụ. A na-eji usoro a mee ihe mgbe edemede ga-arụ ọrụ dịtụ iche na-adabere n'ụkpụrụ nke njikwa ntọala (arụmụka).

Dịka ọmụmaatụ, ị nwere ike ịnwe akwukwọ a na-akpọ "stats.sh" nke na-arụ otu ọrụ na faịlụ, dịka ịgụpụta okwu ya. Ọ bụrụ na ịchọrọ iji edemede ahụ na ọtụtụ faịlụ, ọ kacha mma ka ịnyefe faịlụ aha dị ka esemokwu, ka i wee nwee ike iji otu edemede ahụ maka faịlụ niile a ga-edozi. Dịka ọmụmaatụ, ọ bụrụ na aha faịlụ a ga-edozi bụ "songlist", ị ga-abanye usoro iwu a:

sh stats.sh songlist

A na-enwetarịta arụmụka n'ime ederede site na iji ngwongwo $ 1, $ 2, $ 3, wdg, ebe $ 1 na-ezo aka arụmụka mbụ, $ 2 maka arụmụka nke abụọ, na ihe ndị ọzọ. A na-egosipụta nke a na ihe atụ na-esonụ:

FILE1 = $ 1 wc $ FILE1

Maka readability, nyefee agbanwe na aha nkọwa maka uru nke arụmụka mbụ ($ 1), wee kpọọ okwu ọnụ ọgụgụ ( wc ) na agbanwe a ($ FILE1).

Ọ bụrụ na i nwere arụmụka agbanwe agbanwe, ị nwere ike iji "$ @" agbanwe, nke bụ usoro nke ihe niile ntinye. Nke a pụtara na ị nwere ike iji ntinye aka iji mee nchọpụta nke ọ bụla, dika edere na ihe atụ na-esonụ:

maka FILE1 na "$ @" do wc $ FILE1 mere

Nke a bụ ihe atụ nke otu esi akpọ edemede a na arụmụka sitere na iwu ahụ:

sh stats.sh songlist1 songlist2 songlist3

Ọ bụrụ na esemokwu nwere ohere, ịkwesịrị itinye ya na ntinye ọnụ. Ọmụmaatụ:

sh stats.sh 'songlist 1' 'songlist 2' 'songlist 3'

A na-edekarị ederede ka onye ọrụ ahụ nwee ike iji arụmụka mee ihe n'arụ ọ bụla. Site na ọkọlọtọ, ị nwekwara ike ime ụfọdụ nhọrọ arụmụka.

Kwuo ka ị nwere ederede na-eweghachite ozi site na nchekwa data dabere na paragraf ndị a kapịrị ọnụ, dị ka "aha njirimara", "ụbọchị", na "ngwaahịa", ma na-ebute akụkọ na "usoro" akọwapụtara. Ugbu a, ịchọrọ ide edemede gị ka i wee nwee ike ịgafe na mpaghara ndị a mgbe a na-akpọ edemede ahụ. Ọ nwere ike ịdị ka nke a:

makereport -u jsmith -p notebooks -d 10-20-2011 -f pdf

Bash na-enyere ọrụ a aka na ọrụ "getopts". Maka ihe atụ ahụ dị n'elu, ị nwere ike iji beopts dị ka ndị a:

Nke a bụ oge na-ejiri ọrụ "getopts" na ihe a na-akpọ "optstring", na nke a "u: d: p: f:", iji ghọta site na arụmụka. Oge ntinye aka na-aga site na ntụgharị, nke nwere ọkọlọtọ nke enwere ike iji mee ihe arụmụka, ma nye ọrụ arụmụka maka ọkọlọtọ ahụ na "nhọrọ" agbanwe. Okwu ikpe ahụ na-enye uru nke agbanwe "nhọrọ" na mgbanwe zuru ụwa ọnụ nke nwere ike iji mee ihe mgbe arụmụka niile a gụchara.

Ndị na-eburu ndị na-eme njem ahụ na-egosi na achọrọ ụkpụrụ maka flags kwekọrọ. Na ihe atụ n'elu, a na-agbaso ọkọlọtọ niile: "u: d: p: f:". Nke a pụtara, flags niile chọrọ uru. Dịka ọmụmaatụ, ọ bụrụ na atụghị anya na "afụ" d "na" f "ga-aba uru, ntụgharị ahụ ga-abụ" u: dp: f ".

A colon na mmalite nke ntụgharị, dịka ọmụmaatụ ": u: d: p: f:", nwere ihe dị iche iche. Ọ na-enye gị ohere ijikwa flags na-anaghị anọchite anya ya. N'ọnọdụ ahụ uru nke "nhọrọ" agbanwebere na "?" na uru nke "OPTARG" dị na ọkọlọtọ a na-atụghị anya ya. Na-enye gị ohere igosi ozi ezighi ezi na-agwa onye ọrụ nke mmeghe ahụ.

Arụmụka ndị na-adịghị n'ihu ọkọlọtọ na-eleghara anya site na beopts. Ọ bụrụ na a naghị enye ọkọlọtọ akọwapụtara na njirimara mgbe a na-akpọ edemede ahụ, ọ dịghị ihe ga-eme, ọ gwụla ma ị na-ejikarị okwu a na koodu gị. Enwere ike iji arụmụka na-adịghị edozi site na bọtịnụ jidere $ 1, $ 2, na nke ọzọ.