Tataiso ea ba qalang ho BASH - Karolo ea 1 - Lefatše la Bonna

Ho na le litaelo tse ngata ho internet tse bontšang kamoo u ka hlahisang mangolo a Shell ho sebelisa BASH 'me tataiso ena e reretsoe ho fana ka spin e fapaneng haholo hobane e ngotsoe ke motho ea nang le phihlelo e nyenyane ea sekhetla.

Hona joale u ka 'na ua nahana hore ena ke maikutlo a se nang thuso empa ke fumana hore litataiso tse ling li bua le uena joalokaha eka u se u le setsebi le lihlopha tse ling tse nka nako e telele haholo ho khaola ho lelekisa.

Le hoja phihlelo ea ka ea LINUX / UNIX ea shell e lekanyelitsoe, ke moetsi oa lenaneo la khoebo le 'na ke letsoho la matsoho lipuong tsa script tse kang PERL, PHP le VBScript.

Taba ea tataiso ena ke hore u tla ithuta ha ke ithuta 'me tlhahisoleseding efe kapa efe eo ke e fumanang ke tla e fetisetsa ho uena.

Rea qala

Ho totobetse hore ho na le likhopolo tse ngata tseo nka li fetisetsang hang-hang joalo ka ho hlalosa mefuta e sa tšoaneng ea shell le menyetla ea ho sebelisa BASH ho feta KSH le CSH.

Batho ba bangata ha ba ithuta ntho e ncha ba batla ho kena kahare le ho qala ka lithuto tse ling tsa bohlokoa pele le ka kelellong ke nahana hore nke ke ka u tsoara ka litsela tse sa bohlokoa hona joale.

Ntho eohle eo ue hlokang bakeng sa ho latela tataiso ena ke mohlophisi oa mongolo le sephetho se sebetsang BASH (sekhetho se fapakaneng ho li-distributions tse ngata tsa Linux).

Bahlophisi ba Mongolo

Litaelo tse ling tseo ke li balileng li bontšitse hore u hloka mohlophisi oa melaetsa o kenyelletsang ho khetholla mebala ea litaelo le bahlophisi ba khothalletsoang ke VIM kapa EMACS .

Mokhoa oa ho khetholla mebala o monate ha o totobatsa litaelo ha u li thaepa empa e le hore u qale ka ho fetisisa u ka qeta libeke tse seng kae tsa pele u ithuta VIM le EMACS ntle le ho ngola mola o le mong oa khoutu.

Har'a tse peli ke khetha EMACS empa ke tšepahala Ke khetha ho sebelisa mohlophisi o bonolo o kang nano , gedit kapa leafpad.

Haeba u ngola mangolo ka khomphuteng ea hau mme u tseba hore u tla lula u e-na le sebopeho sa lipapali, u ka khetha mohlophisi o sebetsang hantle bakeng sa hau le oona e ka ba lipapali tse kang Google kapa mohlophisi o tsamaeang ka ho toba tse kang nano kapa vim.

Bakeng sa merero ea tataiso ena ke tla sebelisa nano ha e kenngoa natively ka boholo ba li-distributions tsa Linux mme ho ka etsahala hore o tla e fumana.

Ho bula Window ea Terminal

Haeba o sebelisa ho tsamaisoa ha Linux ka desktop e hlakileng e kang Linux Mint kapa Ubuntu u ka bula fensetere ea ho qetela ka ho hatisa CTRL + ALT + T.

Moo U ka Behang Mangolo a Hao

Bakeng sa merero ena ea lithupelo u ka kenya mangolo a hau ka har'a folda tlasa fensetere ea lapeng.

Ka hare ho fensetere ea fensetere etsa bonnete ba hore u ka har'a folda ea hau ea lapeng ka ho thapa taelo e latelang:

cd ~

Molaetsa oa cd o eme bakeng sa phetoho ea boitsebiso 'me tilde (~) ke tsela e khutšoanyane ea fensetere ea lapeng.

O ka hlahloba hore o sebakeng se nepahetseng ka ho thapa taelo e latelang:

pwd

Taelo ea pwd e tla u bolella lenaneo la hau la hona joale la ho sebetsa (moo u leng sebokeng sa moelelo). Molemong oa ka o khutletse / lapeng / gary.

Hona joale ho totobetse hore u ke ke ua batla ho kenya mangolo a hau ka har'a fensetere ea lehae kahoo u bopa folda e bitsoang li-scripts ka ho thapa taelo e latelang.

mongoli oa mkdir

Fetola ka fensetere e ncha ea mangolo ka ho thapa taelo e latelang:

cd scripts

Lengolo la hau la pele

Ho tloaelehile ha u ithuta mokhoa oa ho etsa lenaneo la pele feela ho hlahisa mantsoe "Lefatše la Lumela".

Ho tloha ka har'a fensetere ea hau e ngotsoeng, kena ka taelo e latelang:

nano helloworld.sh

Joale kenya khoutu e latelang fensetereng ea nano.

#! / bin / bash e le "hello world"

Tobetsa CTRL + O ho boloka faele le CTRL + X ho tsoa nano.

Script ka boeona e entsoe ka tsela e latelang:

The #! / Bin / bash e lokela ho kenngoa ka holimo ho mangolo ohle ao u a ngotseng ha e ntse e lumella bafetoleli le mokhoa oa ho sebetsa o tseba ho sebetsana le faele. Ha e le hantle feela u hopole ho e kenya le ho lebala hore na ke hobane'ng ha u etsa joalo.

Mokha oa bobeli o na le taelo e le 'ngoe e bitsoang echo e hlahisang lengolo le le latelang hang-hang.

Hlokomela hore haeba u batla ho bontša lentsoe le fetang le le leng u hloka ho sebelisa litlhahiso tse peli (") ho pota mantsoe.

Hona joale u ka sebelisa script ka ho thapa taelo e latelang:

sh helloworld.sh

Mantsoe "hello lefatse" a lokela ho hlaha.

Tsela e 'ngoe ea ho tsamaisa mangolo a latelang ke:

./helloworld.sh

Menyetla ke hore haeba u tsamaisa taelo eo ka kotloloho ea hau u tla fumana phoso ea tumello.

Ho fana ka tumello ea ho sebelisa script ka tsela ena, taka se latelang:

sudo chmod + x helloworld.sh

Joale ke eng e ileng ea etsahala moo? Ke hobane'ng ha u ne u khona ho matha helloworld.sh ntle le ho fetola tumello empa u matha ./helloworld.sh e bakile bothata?

Mokhoa oa pele o laola mofetoleli oa bash eo e nkang helloworld.sh e le pono mme o sebetsana le seo a lokelang ho se etsa le eona. Mofetoleli ea bash o se a ntse a e-na le litumello tsa ho matha mme a hloka feela ho tsamaisa litaelo tse ngotsoeng.

Mokhoa oa bobeli o lumella mokhoa oa ho sebetsa hore o sebetse seo u lokelang ho se etsa le script mme ka baka leo o hloka bit e ka etsoang ho phethahatsa.

Mongolo o boletsoeng ka holimo o ne o le hantle empa ho etsahala'ng haeba u batla ho bontša matšoao a quotation?

Ho na le litsela tse fapaneng tsa ho finyella sena. Ka mohlala, u ka beha morao pele ho matšoao a quotation ka tsela e latelang:

echo \ "hello world \"

Sena se tla hlahisa sehlahisoa sa "hello lefatse".

Emela hanyane ka nako, ho thoe'ng haeba u batla ho bonts'a \ "hello lefatse \"?

Hantle u ka baleha le batho ba phonyohileng

echo \\ "\" hello lefatse \\ "\"

Sena se tla hlahisa sehlahisoa sa "hello lefatse".

Hona joale ke tseba seo u se nahanang. Empa ke hlile ke batla ho bonts'a \\ "\" hello lefatse \\ "\"

Ho sebelisa echo le batho bana bohle ba pholohang ba ka ba bobebe. Ho na le taelo e 'ngoe eo u ka e sebelisang e bitsoang printf.

Ka mohlala:

printf '% s \ n' '\\ "\" hello world \\ "\"'

Hlokomela hore temana eo re batlang ho e bontsa e pakeng tsa lintlha tse le 'ngoe. The printf command e hlahisa mongolo o tsoang mongolong oa hau. % S e bolela hore e tla bontša khoele, \ n e fana ka mohala o mocha.

Kakaretso

Ha rea ​​ka ra koahela karolo e kholo ea karolo e le 'ngoe empa ka tšepo re na le script ea hau ea pele e sebetsang.

Karolong e hlahlamang re tla sheba ho ntlafatsa molaetsa oa lefats'e hello ho bonts'a melaetsa ka mebala e fapaneng, amohela le ho sebetsana le litekanyetso tsa ho kenya, mefuta-futa le ho hlahisa khoutu ea hau.