Ionnsaich mar a chuireas tu fo-sgrìobhadairean gu ceart air dòigh a 'cleachdadh sgriobtaichean bash

Mar a bheir thu stiùireadh do shùilean-fuirich gus ruith ann an co-shìnte sa chùl-fhiosrachadh

Tha slige na eadar-aghaidh bunaiteach airson a bhith a 'toirt a-steach òrdughan air siostam Linux. Leis, faodaidh tu comharra a chur a-steach gu dìreach no faidhle a shònrachadh (sgriobt) anns a bheil sreath de dh 'òrduighean a thèid a chur gu bàs. Tha sligean air an eagrachadh ann an òrdugh, agus faodaidh sligean sam bith slige ùr a chruthachadh. Thathas den bheachd gur e pròiseas cloinne a th 'anns an t-slige ùr - fo-shligeach de na sligean phàrant a tha ga chruthachadh.

Mar as trice, tha subshell an crochadh air a phàrant san t-seall, ma dh 'fhaodas a' phròiseas pàrant a thighinn gu crìch, thig am fo-cheannard gu crìch cuideachd. Thèid toradh sam bith a thoirt seachad bhon fho-shìneadh don slige phàrant.

Mar a chruthaicheas tu fo-fhaclair

Ann an sgriobt slige Bash, cruthaichidh tu fo-chlach le bhith a 'comharrachadh beart:

#! / bin / bash echo "Mus tòisich fo subshell" (cunnt = = 1 fhad 'sa tha [$ cunntadh -le ​​99] dèan echo "cadal" cunntadh 1 ((cunntadh ++)) dèan echo "Crìochnaichte"

Anns an eisimpleir, tha an lùb fada ceangailte ann am pàtran, a tha ag adhbharachadh gum bi e air a chur gu bàs ann am fo-shìneadh den sligean far a bheil am faidhle sgriobt air a chur gu bàs.

A 'ruith fo-chnoc anns a' chùl-raon

Mura h-eil thu a 'sònrachadh gu bheil an subshell gu bhith air a chur gu bàs sa chùl-raon, tha am pàrant slige a' feitheamh ris an fho-chlach gus crìochnachadh mus lean thu leis a 'chuid eile den sgriobt. Ge-tà, ma tha thu airson ruith fo-thaobhach co-shìnte, bidh thu gan ruith sa chùl-raon, a tha air a choileanadh leis a 'charactar agus an caractar às deidh a' bheò-fhuaimneachadh, mar a chithear an seo:

#! / bin / bash echo "Mus tòisich fo subshell" (cunnt = = 1 fhad 'sa tha [$ cunntadh -le ​​99] dèan echo "cadal" cunntadh 1 ((cunntas ++)) air a dhèanamh) agus mac-samhail "Crìochnaichte"

A 'Rèiteachadh Ioma-fhuadain ann an Co-shìnte

Ma chruthaicheas tu iomadh subhells mar phròiseasan cùl-raoin, is urrainn dhut gnìomhan a ruith co-shìnte. Mar as trice, bidh an siostam obrachaidh a 'cleachdadh pròiseasan no cores eadar-dhealaichte airson gach pròiseas agus fo-phròiseas, a' gabhail ris gu bheil uiread de phrosairean no coireachan mar a tha pròiseasan ann. Air an làimh eile, tha gnìomhan air an sònrachadh airson na h-aon phròiseasairean no cores. Anns a 'chùis sin, bidh am pròiseas no am prìomh shlaodadh eadar na gnìomhan a chaidh a shònrachadh gus an tèid na gnìomhan a chrìochnachadh. Tha dà fho-phròiseasan san ath eisimpleir. Tha a 'chiad fhear a' cunntadh bho 1 gu 99, agus an dàrna fear eadar 1000 is 1099.

#! / bin / bash echo "Mus tòisich fo subshell" (cunnt = = 1 fhad 'sa tha [$ cunntadh -le ​​99] dèan eco "$ count" cadal 1 ((cunntas ++)) dèante) & (count = 1000 fhad' sa tha [$ count -le 1099] dèan mac-meanmna "$ count" cadal 1 ((cunntadh ++)) air a dhèanamh) & mac-samhail "Crìochnaichte"

Cleachd an aithris feitheamh gus innse don phròiseas pàrant feitheamh gus na fo-phròiseasan crìochnachadh mus tèid iad air adhart leis a 'chòrr den sgriobt:

#! / bin / bash echo "Mus tòisich fo subshell" (cunnt = = 1 fhad 'sa tha [$ cunntadh -le ​​99] dèan eco "$ count" cadal 1 ((cunntas ++)) dèante) & (count = 1000 fhad' sa tha [$ count -le 1099] dèan mac-meanmna "$ count" cadal 1 ((cunntadh ++)) dèante) agus feitheamh mac-samhail "Crìochnaichte"

Cleachdaidhean airson subshells

Tha fo-fhaclairean feumail nuair a dh'fheumar òrdughan a chuir gu bàs ann an àrainneachd no seòladh sònraichte. Ma tha gach àithne air a chur gu bàs ann an subshell eadar-dhealaichte, chan eil cunnart ann gum bi suidheachadh caochlaideach air a mheasgachadh. Nuair a tha e deiseil, chan fheum na roghainnean agus an eòlaire làithreach a bhith air an ath-leasachadh, oir chan eil gin de na fo-phròiseasan aige a 'toirt buaidh air àrainneachd a' phàrant-phàighidh.

Faodar fo-fhaclairean a chleachdadh ann am mìneachadh obrach gus am faod iad a bhith air an cur gu bàs grunn thursan le paraimearan eadar-dhealaichte.