Pehea e pale ai i nā kū'ē'ē i kahi papa inoa-papa

Nā kauoha, ka syntax a me nā lālā

Hiki iāʻoe ke kākau i kahi papa bash i mea e loaʻa ai nā manaʻo i paneʻia i ka wā e kāheaʻia ai ka hōʻailona mai ke laina kauoha. Hoʻohanaʻia kēiaʻano i ka hanaʻana o kahi hōʻailona i kahiʻoi iki keʻano e pili ana i nā koina o nā palena'āina (nā manaʻo).

Eia kekahi laʻana, hiki iāʻoe ke hoʻohana i kahi hōʻailona i kapaʻia "stats.sh" e hana i kahi hana ma kahi pūnaewele, e like me ka heluʻana i kāna mau hua'ōlelo. Inā makemakeʻoe e hoʻohana i kēlā palapala ma ka nui o nā faila,ʻoi aku ka maikaʻi o ka hāʻawiʻana i ka inoa o ka inoa ma keʻano he pane, i hiki ai iāʻoe ke hoʻohana i ka hōʻali pūnaewele no nā faila a pau e hanaʻia. Eia kekahi laʻana, inā e hoʻokomoʻia ka inoa o ka faila "songlist", e hoʻokomo i kēia laina kauoha:

kūlana st stats.sh

Hoʻokomoʻia nā kumuhana i loko o kahi hōʻailona me ka hoʻohanaʻana i nā kānana $ 1, $ 2, $ 3, a me nā mea'ē aʻe, kahi $ 1 e pili ana i ka pane mua, $ 2 i ka paneʻelua, a pēlā aku. Hōʻikeʻia kēia ma keʻano ma lalo nei:

FILE1 = $ 1 wc $ FILE1

No ka heluheluʻana, e hoʻoili i kahi hoʻololi me kahi inoaʻike i ka waiwai o ka hoʻopiʻi mua ($ 1), a laila e kāhea i ka hua'ōlelo helu helu ( wc ) ma kēia māloli ($ FILE1).

Inā loaʻa iāʻoe kekahi helu helu kūikawā, hiki iāʻoe ke hoʻohana i ka "$ @" ke aniani,ʻo ia ka pūnaewele o nā kuhi helu komo. ʻO kēia keʻano e hiki ai iāʻoe ke hoʻohana i kahi noʻonoʻo e hoʻoponopono i kēlā me kēia mea, e like me ia i hōʻikeʻia i kēia hiʻohiʻona:

no FILE1 i "$ @" hana wc $ FILE1 i hana

Eia kekahi hiʻohiʻona o ka pehea e kāhea ai i kēia hō'ā me nā manaʻo mai ka laina kauoha:

sh stats.sh songlist1 songlist2 songlist3

Inā he hanana ka pahuhopu, ponoʻoe e hoʻopaʻa i nā kaha puana'ī. ʻo kahi laʻana:

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

I nā manawa pinepine ua kākauʻia kahi hōʻailona e hiki ai i ka mea hoʻohana ke hele i nā manaʻoi loko o kēlā me kēia kauoha e hoʻohana i nā hae. Me ka pae hae, hiki iāʻoe ke hana i kekahi o nā kumuhana koho.

E'ōleloʻoe iāʻoe kahi moʻolelo e kiʻi hou mai i kaʻikepili mai kahi waihonaʻikepili e pili ana i nā mea i hoʻohālikelikeʻia, e like me "inoa inoa", "lā", a me ka "huahana", a hoʻopuka i kahi hōʻike i kahi "hōpili" i'ōleloʻia. I kēia manawa, makemakeʻoe e kākau i kāu palapala i hiki iāʻoe ke hele i kēia mau palena i ka wā i heaʻia ai ka hōʻailona. Hiki iā ia keʻano:

makereport -u jsmith -p bookbooks -d 10-20-2011 -p pdf

Mālamaʻo Bash i kēia hana me kaʻoihana "getopts". No kēia hiʻohiʻona i luna nei, hiki iāʻoe ke hoʻohana i nā upopts penei:

ʻO kēia kahi lālā loop- hoʻohana e hoʻohana ana i ka "getopts" a me ka mea i kapaʻia he "optestring", ma kēia hihia "u: d: p: f:", e hoʻomaopopo i nā pane. Ke hele nei ka loop loop ma o ka pukaʻoi, kahi i loaʻa nā hae i hiki ke hoʻohana no ka hoʻonāʻana i nā kumuhana, a hāʻawi i ka helu kū'ē i hāʻawiʻia no kēlā hae i ka "koho". Hiki i ka hihia-helu ke hāʻawi i ka waiwai o ka "koho" i ka helu honua i hiki ke hoʻohana ma hope o ka heluheluʻana o nā manaʻo.

ʻO ka poʻe kahu ma ka meaʻoi aku,ʻo ia hoʻi,ʻo nā kumukūʻai ka mea e pono ai no nā hae haehae. Ma ka'ōlelo i hōʻikeʻia nei, ua ukaliʻia nā hae a pau e kekahi kolona: "u: d: p: f:". ʻO keʻano,ʻo nā hae a pau e pono i kahi waiwai. Ināʻaʻole i manaʻoʻia ka waiwai o nā "d" a me nā "f",ʻo ka kohoʻana he "u: dp: f".

ʻO kahi pana i ka hoʻomakaʻana o kaʻaeʻana, e like me ": u: d: p: f:", heʻanoʻokoʻa loa kona. Hiki iāʻoe ke mālama i nā hae i hōʻikeʻoleʻia ma kaʻaoʻao. I kēlā manawa, ua hoʻonohonohoʻia ke kumu o ka "koho" koho "i"? " ao ke kumu o "OPTARG" i hoʻonohoʻia i ka hae i manaʻoʻoleʻia. Hāʻawi iāʻoe e hōʻike i kahi leka uila kūpono e hoʻomaopopo ana i ka mea hoʻohana i ka kuhi.

ʻAʻole i mālamaʻia nā hōʻailona i halaʻole i ka hae e nā toopts. Ināʻaʻole i hāʻawiʻia nā hae i ho'ākākaʻia i loko o ka'ōkuhi i ka wā i heaʻia ai ka hōʻailona,ʻaʻohe mea e loaʻa, keʻoleʻoe e mālama i kēia hihia ma kāu code. E hiki ke hoʻopaʻaʻia kekahi mau manaʻoi hāʻinaʻoleʻia e nā'ōkuhi i nā $ 1, $ 2, a me nā mea'ē aʻe.