Sida loo Gudbiyo Argagixisada Bash-script

Amarrada, ereyga iyo tusaalooyinka

Waxaad ku qori kartaa waraaqaha khashinka ah sida in ay hesho gorgorto la cayimay marka qoraalka loo yaqaano xariiqda taliska. Habkani waxaa loo isticmaalaa marka qoraagu uu sameeyo waxoogaa kala duwan oo ku xiran qiimayaasha xuduudaha (doodaha).

Tusaale ahaan, waxaa laga yaabaa inaad haysatid warqad la yiraahdo "stats.sh" kaasoo samaynaya hawl qaas ah faylasha, sida tirinta erayada. Haddii aad rabto inaad awood u yeelatid inaad isticmaasho qoraalkaas faylasha badan, waxa ugu wanaagsan inaad ku gudbiso magaca feylka dood ahaan, si aad u isticmaali karto qoraalka isku midka ah dhammaan faylasha lagu shaqeynayo. Tusaale ahaan, haddii magaca faylka la fayl-gareeyo uu yahay "liis-liis", waxaad gashaa line-ka soo socda:

sh

Argaggixisada waxaa lagu dhex dhexeeyaa qoraalka iyadoo la adeegsanayo doorsoomayaasha $ 1, $ 2, $ 3, iwm., Halkaasoo $ 1 uu sheegayo dooddii ugu horreysay, $ 2 doodii labaad, iyo wixii la mid ah. Tani waxaa lagu muujiyey tusaalahan soo socda:

FILE1 = $ 1 wc $ FILE1

Aqriska, u bedel doorsoomaha leh magac sharaxaad leh qiimaha doodda koowaad ($ 1), ka dibna wac qadarka tirinta tirooyinka ( wc ) ee isbeddelkani ($ FILE1).

Haddii aad leedahay tiro isbeddel ah oo dood ah, waxaad isticmaali kartaa variable "$ @", taas oo ah arrin ka mid ah dhammaan xuduudaha waxtarka. Tani waxay ka dhigan tahay inaad isticmaali karto wareegga-loop si aad udheeri kartid mid kasta, sida lagu muujiyey tusaalahan soo socda:

loogu talagalay FILE1 "$ @" wc $ FILE1 oo la sameeyo

Halkan waxaa ku qoran tusaale ahaan sida loo waco buuggan iyada oo doodaha laga soo xigtay khadka taliska:

sh maxmed axmed shariif sh axmed songlist3

Haddii dooddu leedahay bannaan, waxaad u baahan tahay inaad ku soo lifaaqto xigasho kali ah. Tusaale ahaan:

sh Maxamed yuusuf oo sheegay sirta Soomaaliya song download,

Inta badan qoraalka waxaa loo qoraa sida qofku u isticmaali karo doodo kasta oo amar ah iyadoo la isticmaalayo calamado. Iyada oo habka calanka, waxaad sidoo kale samayn kartaa qaar ka mid ah doodaha la dooran karo.

Aan kuu sheegno inaad haysatid warqad ka heleysa macluumaadka xogta oo ku salaysan xuduudaha la cayimay, sida "username", "taariikhda", iyo "wax soo saarka", oo soo saaro warbixinta "qaab". Hadda waxaad rabtaa in aad qorto warqaddaada si aad ugu gudubto xuduudahan marka qoraalka loo yaqaan. Waxay u egtahay sidan:

maktabay -u jsmith -p buug-qorayaasha -10-20-2011 -f pdf

Baashku wuxuu u shaqeeyaa shaqadan iyadoo la adeegsanayo "goofts". Tusaalaha kor ku qoran, waxaad isticmaali kartaa gawaarida sida soo socota:

Tani waa wakhti -loop ah oo adeegsanaya "shaqo-helista" iyo waxa loogu yeero "ficil", ee kiiskan "u: p: f:", si ay u adkaato doodaha. Waqtiga-looji-socodku wuxuu ku socdaa iyadoo la eegayo aragtida, taas oo ku jirta calaamadaha loo isticmaali karo inay ku aflaxaan doodaha, waxayna ku darsadaan qiimaha argumentiga ee loogu talagalay calankaas in ay badalaan "doorasho". Kiis-bayaanka ayaa markaa ka dhigaya qiimaha doorsoomaha "ikhtiyaari" oo ah isbeddel caalami ah oo isticmaali karo kaddib marka doodaha la aqriyo.

Khariidadaha muuqaalku waxay ka dhigan yihiin in qiimaha loo baahan yahay calanka u dhigma. Tusaalaha kor ku xusan waxaa lagu soo raacay calanka: "u: d: p: f:". Tani macnaheedu waa, calamadaha oo dhan waxay u baahan yihiin qiime. Haddii, tusaale ahaan, calamada "d" iyo "f" aan la fileynin inay qiimeeyaan, aragtidu waxay noqonaysaa "u: dp: f".

Gooni bilowga hore, tusaale ahaan "u: d: p: f:", wuxuu leeyahay macnaha gebi ahaanba ka duwan. Waxay kuu ogolaaneysaa inaad kalluumaysatid kuwa aan ku matalaynin ficilka. Xaaladdaas oo kale, qiimaha "doorsoome" ayaa lagu qeexay "?" iyo qiimaha "OPTARG" ayaa lagu qoraa calanka aan la fileynin. Waxay kuu ogolaaneysaa inaad soo bandhigto farriin qaldan oo ku habboon oo ku saabsan isticmaalaha qaladka.

Argagixisada aan horay loo arag calanka ayaa waxaa la iska indhatiray gadaal. Haddii calaamadaha lagu qeexay aragtida aan la bixin marka qoraalka loo yeedho, waxba ma dhicin, haddii aadan si gaar ah u hayn kiiskan koodkaaga. Hadal kasta oo aan lagu xallin karin gawaarida ayaa weli la qabsan karaa $ 1, $ 2, iwm.