Tùs Luchd-tòiseachaidh gu BASH - Pàirt 1 - Hello World

Tha tòrr de na h-iùl air an eadar-lìon a 'sealltainn mar a chruthaicheas tu sgriobtaichean Shell a' cleachdadh BASH agus tha an stiùireadh seo ag amas air spion beagan eadar-dhealaichte a thoirt oir tha e air a sgrìobhadh le cuideigin aig nach eil mòran sgriobtaichean slige.

A-nis is dòcha gum bi thu a 'smaoineachadh gur e beachd gòrach a tha seo ach tha mi a' lorg gu bheil cuid de na treòraichean a 'bruidhinn ribh mar gum biodh eòlaiche mar-thà agus gu bheil treòraichean eile a' toirt ro fhada airson a bhith air an gearradh.

Ged a tha an eòlas sgriobtachaidh LINUX / UNIX slige cuingealaichte, tha mi nam leasaiche bathar-bog le bhith a 'malairt agus tha mi a' toirt taic dha cànanan sgriobtaidh mar PERL, PHP agus VBScript.

Is e puing an iùl seo gum ionnsaichidh tu mar a bhios mi ag ionnsachadh agus a thogas mi fiosrachadh sam bith, cuiridh mi thugaibh.

A 'tòiseachadh

Tha e follaiseach gu bheil tòrr teòiridh ann gum faodainn a thoirt dhut dìreach mar a bhith a 'toirt cunntas air na diofar sheòrsaichean sligean agus na buannachdan a bhith a' cleachdadh BASH thar KSH agus CSH.

Tha a 'mhòr-chuid de dhaoine nuair a tha mi ag ionnsachadh rudeigin ùr ag iarraidh a dhol a-steach agus a' tòiseachadh le cuid de leasanan practaigeach an toiseach agus le sin ann an cuimhne nach eil mi a 'dol gad ghiùlain le trioblaidean nach eil cudromach an-dràsta.

Is e a h-uile dad a dh 'fheumas tu airson an stiùireadh seo a leantainn a bhith na dheasaiche teacsa agus crìoch-crìochnachaidh a' ruith BASH (an slige bunaiteach air a 'mhòr-chuid de sgaoileadh Linux).

Luchd-deasachaidh teacsa

Tha treòrachadh eile a leugh mi air a bhith a 'moladh gum feum thu deasaiche teacsa a tha a' toirt a-steach còd dathte de dh 'òrduighean agus gur e VIM no EMACS an luchd-deasachaidh a thathar a' moladh.

Tha còdadh dathte glè mhath seach gu bheil e a 'soilleireachadh òrdughan mar a tha thu a' sgrìobhadh ach airson a 'chiad neach-tòiseachaidh dh'fhaodadh tu a' chiad sheachdainnean a chaitheamh ag ionnsachadh VIM agus EMACS gun a bhith a 'sgrìobhadh aon loidhne de chòd.

A-mach às an dà bhuidhinn as fheàrr le EMACS ach a bhith nas onarach is fheàrr leam a bhith a 'cleachdadh deasaiche sìmplidh mar nano , gedit no leafpad.

Ma tha thu a 'sgrìobhadh sgriobtaichean air a' choimpiutair agad fhèin agus tha fios agad gum bi cothrom agad air àrainneachd grafaiceach an-còmhnaidh, faodaidh tu an neach-deasachaidh a tha ag obair as fheàrr a dhèanamh dhut agus faodaidh e a bhith grafaigeach leithid GEdit no neach-deasachaidh a tha a 'ruith dìreach anns a' chrìoch mar nano no vim.

Airson adhbharan an iùl seo bidh mi a 'cleachdadh nano oir tha e air a stàladh gu nàdarra air a' mhòr-chuid de sholarachaidhean Linux agus mar sin is dòcha gum bi cothrom agad air.

A 'fosgladh uinneag teirm

Ma tha thu a 'cleachdadh sgaoileadh Linux le deasg grafach leithid Linux Mint no Ubuntu, faodaidh tu uinneag deireannach a fosgladh le bhith a' putadh CTRL + ALT + T.

Càit an cuir thu na sgrìobhainnean agad

Airson adhbharan an oideachaidh seo, faodaidh tu na sgriobtaichean agad a chur ann am pasgan fo am pasgan dachaigh agad.

Taobh a-staigh uinneag crìochnachaidh dèan cinnteach gu bheil thu anns a 'phutan dachaigh agad le bhith a' sgrìobhadh an àithne a leanas:

cd ~

Tha an àithne cd na sheasamh airson eòlaire atharrachadh agus tha an tilde (~) na gheàrr-chunntas airson do phasgan dachaigh.

Faodaidh tu dèanamh cinnteach gu bheil thu san àite cheart le bhith a 'sgrìobhadh an òrdugh a leanas:

pwd

Innsidh an t-ùghdarras pwd dhut an t-eòlaire-obrach làithreach agad (far a bheil thu anns a 'chraobh eòlaire). Anns a 'chùis agam thill e / dhachaigh / gary.

A-nis, tha e follaiseach nach bi thu airson na sgriobtaichean agad a chuir a-steach don phutan dachaigh agus cruthaich pasgan ris an canar sgriobtaichean le bhith a 'sgrìobhadh an àithne a leanas.

scrips mkdir

Atharraich a-steach don phasgan sgrioptan ùra le bhith a 'sgrìobhadh an àithne a leanas:

cd scripts

Do chiad sgriobt

Tha e àbhaisteach nuair a tha thu ag ionnsachadh mar a tha prògraman airson a 'chiad phrògram a' toirt a-mach na faclan "Hello World".

Bho taobh a-staigh am pasgan scripts agad cuir a-steach an àithne a leanas:

nano helloworld.sh

A-nis, cuir a-steach an còd a leanas a-steach don uinneag nano.

#! / bin / bash echo "hello world"

Brùth CTRL + O gus an fhaidhle a shàbhaladh agus CTRL + X gus fàgail nano.

Tha an sgriobt fhèin air a dhèanamh suas mar a leanas:

Feumaidh an #! / Bin / bash a bhith air a ghabhail a-steach aig mullach nan sgriobtaichean a sgrìobhas tu oir tha e a 'leigeil le eadar-mhìnearan agus tha fios aig an t-siostam obrachaidh mar a làimhsicheas iad am faidhle. Gu dearbh, cuimhnich gun cuir thu a-steach e agus dìochuimhnich carson a nì thu e.

Tha aon òrdugh anns an dàrna loidhne air a bheil echo a tha a 'toirt a-mach an teacsa a tha ga leantainn sa bhad.

Thoir an aire ma tha thu airson barrachd air aon fhacal a thaisbeanadh feumaidh tu briathran dùbailte (") a chleachdadh mu na faclan.

Faodaidh tu a-nis an sgriobt a ruith le bhith a 'sgrìobhadh an àithne a leanas:

s an Ear-

Bu chòir na faclan "hello world" nochdadh.

Tha dòigh eile air sgriobtaichean a ruith mar a leanas:

./helloworld.sh

Is e na cothroman a th 'ann ma tha thu a' ruith an àithne sin anns a 'chrìoch agad air falbh gheibh thu mearachd cead.

Gus cead a thoirt seachad airson an sgriobt a ruith san dòigh seo, cuir na leanas a leanas:

sudo chmod + x helloworld.sh

Mar sin, dè thachair ann an sin? Carson a b 'urrainn dhut ruith helloworld.sh a shàbhaladh gun a bhith ag atharrachadh cead ach a' ruith ./An adhbhar a chaidh cùis a dhèanamh ?/helloworld.sh?

Bidh a 'chiad dhòigh a' cleachdadh an eadar-theangaiche bash a bheir an helloworld.sh mar chuideachadh agus ag obair a-mach dè a bu chòir a dhèanamh leis. Tha cead aig an eadar-theangair bash mu thràth a ruith agus feumaidh tu na h-òrduighean anns an sgriobt a ruith.

Tha an dàrna modh a 'leigeil leis an t-siostam obrachaidh obrachadh a-mach dè a nì e leis an sgriobt agus mar sin feumar pàirt gnìomhach a dhèanamh gus a dhèanamh cinnteach.

Bha an sgriobt gu h-àrd ceart ach dè a thachras ma tha thu airson na comharran-luirg a thaisbeanadh?

Tha diofar dhòighean ann seo a choileanadh. Mar eisimpleir, faodaidh tu casg a chur air ais mus cuir na comharraidhean mar a leanas:

echo \ "hello world \"

Nì seo am prògram "hello world".

Fuirich mionaid ged, dè ma tha thu airson sealltainn \ "hello world \"?

Uill, faodaidh tu cuideachd faighinn às na caractaran teicheadh

echo \\ "\" hello world \\ "\"

Nì seo an toradh \ "hello world \".

A-nis tha fios agam dè tha thu a 'smaoineachadh. Ach tha mi gu mòr airson sealltainn \\ "\" hello world \\ "\"

A 'cleachdadh mac-samhail leis a h-uile caractar teicheadh ​​seo gheibhear gu math gòrach. Tha àithne eile ann a dh'fhaodas tu a chleachdadh air printf ris an canar.

Mar eisimpleir:

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

Thoir fa-near gu bheil an teacsa a tha sinn airson a shealltainn eadar eadar-dhealachaidhean singilte. Bidh an toradh printf a 'toirt seachad teacsa bhon sgriobt agad. Tha an% s a 'ciallachadh gun nochd e sreang, agus \ n a' toirt seachad loidhne ùr.

Geàrr-chunntas

Chan eil sinn gu mòr a 'còmhdach mòran talmhainn ann am pàirt a-mhàin ach tha sinn an dòchas gum bi a' chiad sgriobt agad ag obair.

Anns an ath phàirt bidh sinn a 'coimhead air adhartachadh air sgriobt hello world gus an teacsa a thaisbeanadh ann an dathan eadar-dhealaichte, gabhail ri agus a' làimhseachadh paramedraidhean ion-chuimseach, atharrachaidhean agus a 'toirt iomradh air do chòd.