Jei naudojame kokią nors pagrindinę operacinę sistemą, netiesiogiai sąveikaujame su apvalkalas . Vykdydami Ubuntu, Linux Mint ar bet kurį kitą Linux platinimą, mes sąveikaujame su apvalkalu naudodami terminalą. Šiame straipsnyje aptarsime „Linux“ apvalkalus ir apvalkalo scenarijus, todėl prieš suprasdami apvalkalo scenarijus turime susipažinti su šiais terminais:
- Branduolys
- Lukštas
- Terminalas
Turinys
- Kas yra branduolys?
- Kas yra Shell?
- Komandinės eilutės apvalkalas
- Grafiniai apvalkalai
- Kas yra terminalas?
- Shell scenarijus
Kas yra branduolys?
Branduolys yra kompiuterio programa, kuri yra kompiuterio operacinės sistemos šerdis, visiškai kontroliuojanti viską sistemoje. Jis valdo šiuos „Linux“ sistemos išteklius –
- Failų valdymas
- Procesų valdymas
- I/O valdymas
- Atminties valdymas
- Įrenginių valdymas ir kt.
Dažnai klaidinga, kad Linusas Torvaldsas sukūrė Linux OS, tačiau iš tikrųjų jis yra atsakingas tik už Linux branduolio kūrimą.
Pilna Linux sistema = branduolys + GNU sistemos komunalinės paslaugos ir bibliotekos + kiti valdymo scenarijai + diegimo scenarijai.
Kas yra Shell?
Apvalkalas – tai speciali vartotojo programa, kuri suteikia vartotojui sąsają naudotis operacinės sistemos paslaugomis. „Shell“ priima žmonių skaitomas komandas iš vartotojų ir konvertuoja jas į kažką, ką branduolys gali suprasti. Tai komandų kalbos vertėjas, vykdantis komandas, nuskaitomas iš įvesties įrenginių, tokių kaip klaviatūros arba iš failų. Apvalkalas paleidžiamas, kai vartotojas prisijungia arba paleidžia terminalą.
išvalyti npm talpyklą

Linux Shell
„Shell“ iš esmės skirstoma į dvi kategorijas –
- Komandinės eilutės apvalkalas
- Grafinis apvalkalas
Komandinės eilutės apvalkalas
Apvalkalą vartotojai gali pasiekti naudodami komandinės eilutės sąsają. Speciali programa, vadinama „Linux“ / „macOS“ terminalu arba „Windows OS“ komandų eilutė, skirta įvesti žmogaus skaitomas komandas, pvz., cat, ls ir tt, ir tada ji vykdoma. Tada rezultatas vartotojui rodomas terminale. Ubuntu 16.4 sistemos terminalas atrodo taip -

linux komandų eilutė
Aukščiau esančioje ekrano kopijoje ls komandą su -l parinktis vykdoma. Jame bus išvardyti visi dabartinio darbo katalogo failai ilgo sąrašo formatu.
Dirbti su komandinės eilutės apvalkalu pradedantiesiems yra šiek tiek sunku, nes sunku įsiminti tiek daug komandų. Tai labai galinga; tai leidžia vartotojams saugoti komandas faile ir vykdyti jas kartu. Tokiu būdu bet kokia pasikartojanti užduotis gali būti lengvai automatizuota. Šie failai paprastai vadinami paketiniais failais sistemoje Windows ir Lukštas Scenarijai „Linux“ / „MacOS“ sistemose.
Grafiniai apvalkalai
Grafiniai apvalkalai suteikia galimybę manipuliuoti programomis, pagrįstomis grafine vartotojo sąsaja (GUI), leidžiant atlikti tokias operacijas kaip langų atidarymas, uždarymas, perkėlimas ir dydžio keitimas, taip pat perjungimas tarp langų. „Window OS“ arba „Ubuntu OS“ gali būti laikomi geru pavyzdžiu, kuris suteikia vartotojui GUI sąveikai su programa. Vartotojams nereikia įvesti komandų kiekvienam veiksmui. Tipiška GUI Ubuntu sistemoje –

GUI apvalkalas
npm švarios talpyklos jėga
„Linux“ sistemoms yra keletas apvalkalų, tokių kaip -
- BASH (Bourne Again SHell) – tai plačiausiai naudojamas apvalkalas Linux sistemose. Jis naudojamas kaip numatytasis prisijungimo apvalkalas „Linux“ sistemose ir „MacOS“. Jis taip pat gali būti įdiegtas Windows OS.
- CSH (C SHell) – C apvalkalo sintaksė ir jos naudojimas yra labai panašūs į C programavimo kalbą.
- KSH (Korn SHell) – Korn Shell taip pat buvo POSIX Shell standartinių specifikacijų ir kt.
Kiekvienas apvalkalas atlieka tą patį darbą, bet supranta skirtingas komandas ir suteikia skirtingas integruotas funkcijas.
Kas yra terminalas?
Programa, atsakinga už sąsajos suteikimą vartotojui, kad jis/ji galėtų pasiekti apvalkalą. Iš esmės tai leidžia vartotojams įvesti komandas ir matyti tų komandų išvestį tekstinėje sąsajoje. Terminale vykdomi dideli scenarijai, parašyti automatizuoti ir atlikti sudėtingas užduotis.
Norėdami pasiekti terminalą, tiesiog ieškokite terminalo paieškos laukelyje ir dukart spustelėkite jį.
jquery tėvas
atidaryti terminalą
Čia galite pamatyti, kaip atrodo „Red Hat Linux“ terminalas.
terminalas
Shell scenarijus
Paprastai apvalkalai yra interaktyvūs, o tai reiškia, kad jie priima komandas kaip įvestį iš vartotojų ir jas vykdo. Tačiau kartais norime reguliariai vykdyti daugybę komandų, todėl kiekvieną kartą terminale turime įvesti visas komandas.
Kadangi apvalkalas taip pat gali priimti komandas kaip įvestį iš failo, šias komandas galime įrašyti į failą ir vykdyti jas apvalkale, kad išvengtume šio pasikartojančio darbo. Šie failai vadinami Shell scenarijai arba Shell programos . Shell scenarijai yra panašūs į paketinį failą MS-DOS. Kiekvienas apvalkalo scenarijus išsaugomas su „.sh“. failo plėtinys pvz. myscript.sh.
Java trukmė
Apvalkalo scenarijus turi sintaksę kaip ir bet kuri kita programavimo kalba. Jei turite bet kokios programavimo kalbos, pvz., Python, C/C++ ir kt., patirties. Pradėti su ja būtų labai paprasta.
Apvalkalo scenarijų sudaro šie elementai:
- Shell Keywords – if, else, break ir pan.
- Shell komandos – cd, ls, echo, pwd, touch ir kt.
- Funkcijos
- Valdykite srautą – jei...tada..kitaip, korpuso ir apvalkalo kilpos ir pan.
Kodėl mums reikia apvalkalo scenarijų?
Yra daug priežasčių, kodėl verta rašyti apvalkalo scenarijus:
- Kad būtų išvengta pasikartojančio darbo ir automatizavimo
- Sistemos administratoriai naudoja apvalkalo scenarijus įprastoms atsarginėms kopijoms kurti.
- Sistemos stebėjimas
- Naujų funkcijų pridėjimas prie apvalkalo ir kt.
Kai kurie apvalkalo scenarijų pranašumai
- Komanda ir sintaksė yra visiškai tokios pačios kaip ir tiesiogiai įvestos komandinėje eilutėje, todėl programuotojams nereikia pereiti prie visiškai kitokios sintaksės
- Apvalkalo scenarijų rašymas yra daug greitesnis
- Greita pradžia
- Interaktyvus derinimas ir kt.
Kai kurie apvalkalo scenarijų trūkumai
- Būdama linkusi į brangiai kainuojančias klaidas, viena klaida gali pakeisti komandą, kuri gali būti žalinga.
- Lėtas vykdymo greitis
- Kalbos sintaksės arba diegimo projektavimo trūkumai
- Netinka didelėms ir sudėtingoms užduotims
- Pateikite minimalią duomenų struktūrą, skirtingai nuo kitų scenarijų kalbų. ir tt
Paprasta apvalkalo scenarijų kūrimo naudojant Bash Shell demonstracija
Jei dirbate su terminalu, ką nors einate giliai kataloguose. Tada kelyje keliems katalogams turime vykdyti tokią komandą, kaip parodyta toliau, kad patektume į python katalogą:

patekti į python katalogą:
Tai gana nemalonu, taigi kodėl gi ne mes galime turėti programą, kurioje tereikia įvesti katalogo pavadinimą ir galime tiesiogiai pereiti prie jo nevykdydami CD../ komandą vėl ir vėl. Išsaugokite scenarijų kaip šuolis.sh
bash # !/bin/bash # A simple bash script to move up to desired directory level directly function jump() { # original value of Internal Field Separator OLDIFS=$IFS # setting field separator to '/' IFS=/ # converting working path into array of directories in path # eg. /my/path/is/like/this # into [, my, path, is, like, this] path_arr=($PWD) # setting IFS to original value IFS=$OLDIFS local pos=-1 # ${path_arr[@]} gives all the values in path_arr for dir in '${path_arr[@]}' do # find the number of directories to move up to # reach at target directory pos=$[$pos+1] if [ '' = '$dir' ];then # length of the path_arr dir_in_path=${#path_arr[@]} #current working directory cwd=$PWD limit=$[$dir_in_path-$pos-1] for ((i=0; i; i++)) do cwd=$cwd/.. done cd $cwd break fi done }>
Kol kas negalime vykdyti savo apvalkalo scenarijaus, nes jis neturi leidimų. Turime padaryti jį vykdomą įvesdami šią komandą -
$ chmod +x kelias/to/our/file/jump.sh
Dabar, kad tai būtų prieinama kiekvienoje terminalo sesijoje, turime tai įdėti .bashrc failą.
.bashrc yra apvalkalo scenarijus, kurį „Bash“ apvalkalas paleidžia kiekvieną kartą, kai jis paleidžiamas interaktyviai. .bashrc failo paskirtis yra suteikti vietą, kurioje galite nustatyti kintamuosius, funkcijas ir slapyvardžius, apibrėžti mūsų raginimą ir kitus parametrus, kuriuos norime naudoti, kai atidarome naują terminalo langą.
Dabar atidarykite terminalą ir įveskite šią komandą:
pilna forma ide
$ echo šaltinis ~/path/to/our/file/jump.sh>> ~/.bashrc
Dabar atidarykite savo terminalą ir išbandykite naują šuolio funkciją įvesdami šią komandą-
$ jump dir_name
kaip ir žemiau esančioje ekrano kopijoje:

šuolis dir_name
Išvada
Šiame straipsnyje sužinojome apie esmines Linux sistemų dalis: branduolį, kuris valdo viską, apvalkalą, leidžiantį sąveikauti su operacine sistema, ir terminalą – mūsų sąsają komandoms teikti. Ištyrėme komandų eilutę ir grafinius apvalkalus, tokius kaip BASH, ir supratome, kad terminalas yra vieta, kur įvedame komandas. Straipsnyje buvo pristatytas apvalkalo scenarijus – būdas automatizuoti užduotis naudojant paprastus scenarijus, aptarti jų naudojimo pranašumai ir trūkumai. Praktinis pavyzdys parodė scenarijaus kūrimą greitam katalogo naršymui. Galiausiai pamatėme, kaip priversti scenarijų veikti ir tapti pasiekiamu kiekvienoje terminalo sesijoje. Šis straipsnis yra pradedantiesiems skirtas „Linux“ apvalkalų ir apvalkalo skriptų supratimo ir naudojimo vadovas. „Linux“ yra gera kalba, ji parašyta „Linux“ kalba