Shell: Skirtumas tarp puslapio versijų

179 pridėti baitai ,  15 balandžio
nėra keitimo aprašymo
 
(nerodoma 2 tarpinės versijos, sukurtos 2 naudotojų)
1 eilutė: 1 eilutė:
'''Shell''' arba '''šelas''' - tai tokia visiškai ne grafinė, o tekstinė vartotojo aplinka, esanti [[UNIX]], o tuo pačiu - ir visokiose [[Linux]], [[BSD]] ir kitose panašiose [[OS]]. Tekstinėje aplinkoje galima rašyti komandas ar pasileisti kokias nors programas, kaip kad [[Midnight Commander]]. Ta pati tekstinė valdymo aplinka sukuria ir tam tikrą [[programavimas|programavimo]] aplinką, kurioje galima rašyti nelabai sudėtingas programas, darančias visokius nelabai sudėtingus OS valdymo darbus.
'''Shell''' arba '''šelas''' - tai tokia visiškai ne grafinė, o tekstinė vartotojo aplinka, taip vadinama [[komandinė eilutė]], esanti [[UNIX]], o tuo pačiu - ir visokiose [[Linux]], [[BSD]] ir kitose panašiose [[OS]]. Tekstinėje aplinkoje galima rašyti komandas ar pasileisti kokias nors programas, kaip kad [[Midnight Commander]]. Ta pati tekstinė valdymo aplinka sukuria ir tam tikrą [[programavimas|programavimo]] aplinką, kurioje galima rašyti nelabai sudėtingas programas, darančias visokius nelabai sudėtingus OS valdymo darbus.


Viskas labai paprasta: parašote komandą, kaip kokiame messengeryje rašytumėte žinutę, ir paspaudžiate mygtuką [[Enter]]. Svarbu tik suprast, kad kitoje pusėje - ne žmogus, o kompiuteris, su kuriuo kalbatės specialia komandų kalba.
Viskas labai paprasta: parašote komandą, kaip kokiame messengeryje rašytumėte žinutę, ir paspaudžiate mygtuką [[Enter]]. Svarbu tik suprast, kad kitoje pusėje - ne žmogus, o kompiuteris, su kuriuo kalbatės specialia komandų kalba.


Daugeliui pusiau patyrusių vartotojų shell aplinka primena [[DOS]], nes tenai irgi komandinė eilutė būdavo. Tai kai kurie taip ir sako kaip nors, kad "kažkoksai dosas tame linukse yra". Tai išties istorija yra tokia, kad būtent DOS tą šitokios aplinkos idėją kadaise iš [[UNIX]] sistemų ir perėmė, tik kad implementavo kraštutinai primityviai, ribotai ir prastai.
Daugeliui pusiau patyrusių vartotojų shell aplinka primena [[DOS]], nes tenai irgi [[komandinė eilutė]] būdavo. Tai kai kurie taip ir sako kaip nors, kad "kažkoksai dosas tame linukse yra". Tai išties istorija yra tokia, kad būtent DOS tą šitokios aplinkos idėją kadaise iš [[UNIX]] sistemų ir perėmė, tik kad implementavo kraštutinai primityviai, ribotai ir prastai.


Tekstinės aplinkos privalumas - kad lengvai ir patogiai prie jos galima prisijungti iš kur nori. Pvz., stovi jūsų serveris kur nors [[JAV]], o jūs čia [[Lietuva|Lietuvoje]] - tai įsijungiate [[SSH]], prisijungiate prie savo serverio ir darote, ką norite. Arba, pvz., stovi jūsų [[kompiuteris]] namie - tai prasiforvardinat portą iš [[routeris|routerio]] į savo kompą ir taip pasijungiate prie savo naminio kompo kad ir iš [[Amerika|Amerikos]].
Tekstinės aplinkos privalumas - kad lengvai ir patogiai prie jos galima prisijungti iš kur nori. Pvz., stovi jūsų serveris kur nors [[JAV]], o jūs čia [[Lietuva|Lietuvoje]] - tai įsijungiate [[SSH]], prisijungiate prie savo serverio ir darote, ką norite. Arba, pvz., stovi jūsų [[kompiuteris]] namie - tai prasiforvardinat portą iš [[routeris|routerio]] į savo kompą ir taip pasijungiate prie savo naminio kompo kad ir iš [[Amerika|Amerikos]].
15 eilutė: 15 eilutė:
* [[sh]] arba [[Bourne shell]] - klasikinis shell, yra visuose UNIX. Klasikinis, visų naudojamas. Arba, jei nenaudojamas, tai pakeičiamas į tokį patį, tik malonesnį bash.
* [[sh]] arba [[Bourne shell]] - klasikinis shell, yra visuose UNIX. Klasikinis, visų naudojamas. Arba, jei nenaudojamas, tai pakeičiamas į tokį patį, tik malonesnį bash.
* [[bash]] - pagerintas klasikinis shell, panašus į paprastą sh, bet mokantis mygtukus "aukštyn" ir "žemyn", turintis komandų istoriją ir pan.
* [[bash]] - pagerintas klasikinis shell, panašus į paprastą sh, bet mokantis mygtukus "aukštyn" ir "žemyn", turintis komandų istoriją ir pan.
* csh - niekieno nesuprantamas shell, kuris savo komandomis kiek panašesnis į [[C]] kalbą ir geriau tinka programavimui, tačiau niekieno nenaudojamas. Yra visose UNIX tipo sistemose.
* [[csh]] - niekieno nesuprantamas shell, kuris savo komandomis kiek panašesnis į [[C]] kalbą ir geriau tinka programavimui, tačiau niekieno nenaudojamas. Yra visose UNIX tipo sistemose.
* tcsh - tas pats csh, tik naujesnis ir pagerintas taip, kad bent jau įmanoma naudotis būtų.
* tcsh - tas pats csh, tik naujesnis ir pagerintas taip, kad bent jau įmanoma naudotis būtų.
* ksh - visokių hipsterių shell, kurį naudoja tie, kas nori vaizduoti, kad jiems reikia kažko geresnio už bash, bet kurie nemoka naudotis csh. Tiesą sakant, niekas negali pasakyti, kuo realiai ksh skiriasi nuo bash. Hint: turi visokius masyvus, kas aktualu nebent programuojantiems.
* [[ksh]] - visokių hipsterių shell, kurį naudoja tie, kas nori vaizduoti, kad jiems reikia kažko geresnio už bash, bet kurie nemoka naudotis csh. Tiesą sakant, niekas negali pasakyti, kuo realiai ksh skiriasi nuo bash. Hint: turi visokius masyvus, kas aktualu nebent programuojantiems.
* zsh - toksai pusiau kaip bash, pusiau kaip ksh, bet pasitaikantis gal nebent tiktai [[MacOS-X]] sistemose, bet geras.
* zsh - toksai pusiau kaip bash, pusiau kaip ksh, bet pasitaikantis gal nebent tiktai [[MacOS-X]] sistemose, bet geras.
* ash - toksai kadaise sukurtas [[open source]] pakaitalas klasikiniam sh šelui
* ash - toksai kadaise sukurtas [[open source]] pakaitalas klasikiniam sh šelui
* [[Busybox]] - toksai specialus šelas, kuriame sukišta viskas, kas tik galima
* [[Busybox]] - toksai specialus šelas, kuriame sukišta viskas, kas tik galima
* [[dtksh]] - toksai [[ksh]] variantas, kuris palaiko grafinių elementų paišymą ir grafinį programavimą, [[CDE]] dalis


== UNIX/Linux shell komandų naudojimas ir sintaksė ==
== UNIX/Linux shell komandų naudojimas ir sintaksė ==
52 eilutė: 53 eilutė:
* Vidinės ir standartinės komandos - jos dažniausiai yra palaikomos pačios shell programos viduje, o jei yra ne shell viduje, tai guli /bin/ kataloge, kurio programos yra prieinamos visiems ir visada, netgi minimaliausiose sistemose.
* Vidinės ir standartinės komandos - jos dažniausiai yra palaikomos pačios shell programos viduje, o jei yra ne shell viduje, tai guli /bin/ kataloge, kurio programos yra prieinamos visiems ir visada, netgi minimaliausiose sistemose.
* Išorinės komandos - jos yra ne shell programos viduje, o guli kur nors /usr/bin/ kataloge, t.y., jų gali nebūti pačiose minimaliausiose sistemose, bet realiai visvien būna.
* Išorinės komandos - jos yra ne shell programos viduje, o guli kur nors /usr/bin/ kataloge, t.y., jų gali nebūti pačiose minimaliausiose sistemose, bet realiai visvien būna.
* Vartotojo komandos - jos yra padaromos, kaip shell skriptai ar dar kokios nors kitos programos, kurios yra tik ten, kur jas pats vartotojas pasidarė ar pasidėjo. Tokios komandos yra nestandartinės, todėl jų čia nenagrinėsim.
* Vartotojo komandos - jos yra padaromos, kaip shell [[skriptai]] ar dar kokios nors kitos programos, kurios yra tik ten, kur jas pats vartotojas pasidarė ar pasidėjo. Tokios komandos yra nestandartinės, todėl jų čia nenagrinėsim.




229

pakeitimai