Kas yra Bourne Shell?

Bourne apvalkalas yra nedidelė programa, kuri veikia Unix® ir LINUX® operacinėse sistemose ir suteikia sąsają programoms vykdyti sistemoje. Jis dažnai vadinamas komandų eilutės sąsaja arba komandų interpretatoriumi, nes vartotojui nesuteikia jokios grafinės vartotojo sąsajos (GUI). Komandos ir visi būtini parametrai, kuriuos reikia vykdyti, įvedami į apvalkalą. Bourne apvalkalas taip pat yra scenarijų kalba, leidžianti vartotojams kurti ir vykdyti scenarijaus failus, kurie gali apdoroti duomenis per kelias programas naudojant vieną komandą. „Unix®“ tipo sistemose programa tiesiog žinoma kaip „sh“.

Pirmieji tokie apvalkalai Unix® sistemoms buvo žinomi kaip Thompson apvalkalas, kurį sukūrė Kenas Thompsonas, vienas iš originalių Unix® operacinės sistemos kūrėjų. Thompson apvalkalas apsiribojo komandų interpretavimu, o daugybė papildomų funkcijų turėjo būti vykdomos kaip išorinės operacijos. Vėliau Stephenas Bourne’as sukūrė Bourne apvalkalą, kuris pakeistų Thompson apvalkalą, pridėdamas daugybę naujų funkcijų pačiame apvalkale, taip pat apvalkalo scenarijų kalba.

Tiesą sakant, Bourne apvalkalas nuo pat pradžių buvo suplanuotas kaip scenarijų kalba. Nors tai vis dar buvo Unix® septintosios versijos komandų eilutės sąsaja, ji taip pat atvėrė vartotojams galimybę kurti apvalkalo scenarijus, kurie susietų komandas, kad būtų galima apdoroti duomenis. Naudodamas šį programavimą, vartotojas gali nustatyti kintamuosius, skirtus fiksuoti žinomus arba nežinomus duomenis iš įvesties arba išvesties, ir manipuliuoti tų duomenų apdorojimu scenarijuje naudodamas sąlyginius sakinius, naudodamas techniką, vadinamą valdymo srautu.

Tai taip pat buvo pirmasis apvalkalas, kuriame įdiegta funkcija, žinoma kaip signalo tvarkymas. Per Bourne apvalkalą vartotojas gali siųsti tam tikro tipo signalą kompiuteryje jau vykdomam procesui, nurodydamas tam procesui atlikti ką nors kita. Daugelis iš jų yra būdai sustabdyti vykdomą procesą ir sukurti tam tikrą išvestį, kuri gali būti naudojama derinimui, tačiau yra kitų būdų laikinai sustabdyti procesą, atnaujinti ir pan.

Galimybė tiesiogiai valdyti failų deskriptorius buvo dar viena pirmoji Bourne apvalkalo dalis. „Unix®“ tipo sistemoje kiekviena veikianti programa turi lentelę, kurioje pateikiami visų atidarytų failų failų aprašai. Tai gali apimti bet ką – nuo ​​paprasto tekstinio failo iki katalogo ar net ryšio lizdų, kuriuos procesai naudoja duomenims dalytis tarpusavyje. Kad vartotojas galėtų valdyti sistemos failų aprašus, buvo suteikta precedento neturinti įvesties ir išvesties kontrolė praktiškai viskam, kas yra kompiuteryje.

Žinoma, nors Bourne apvalkalas vartotojams siūlė tokias papildomas funkcijas, jame trūko tokių funkcijų kaip galimybė interaktyviai valdyti procesus, nustatyti komandų slapyvardžius ir išsaugoti istoriją. Tačiau vėliau pradėjo atsirasti daug palikuonių, kurie perėmė naudingiausias per daugelį metų sukurtas apvalkalo savybes ir suvyniojo jas į naujus apvalkalus. Vienas iš dažniausių pavyzdžių yra Bourne-gain apvalkalas arba Bash, kuris yra įprastas daugelyje LINUX® sistemų. Dėl to daugelis šių palikuonių gali visiškai vykdyti įprastus Bourne apvalkalo scenarijus, suteikdami kiekvienai į Unix® panašią sistemą tam tikrą originalaus Bourne apvalkalo įgyvendinimą vienu ar kitu būdu. Daugelyje LINUX® sistemų tai yra tiesiog nuoroda iš „sh“ į „bash“ arba kokį nors kitą galimą palikuonį.