Unix / Linux-kuoret 101

Kirjoittaja: Eugene Taylor
Luomispäivä: 11 Elokuu 2021
Päivityspäivä: 22 Kesäkuu 2024
Anonim
All Shells of Gerand and Valhalla Toons - Cartoons about tanks
Video: All Shells of Gerand and Valhalla Toons - Cartoons about tanks

Sisältö



Lähde: Tomasz Bidermann / Dreamstime.com

Ottaa mukaan:

Unix- ja Linux-kuoret ovat erittäin tehokkaita ja erittäin muokattavissa.

Komentorivi Unix- ja Linux-järjestelmissä on jo erittäin tehokas, mutta kuoret ovat vielä tehokkaampi työkalu kuin silmälle. Voit mukauttaa niitä ja muuttaa ne sydämesi sisältöön, kunhan tiedät miten.

Mikä on kuori?

Lähes jokaisessa Unix- ja Linux-käyttöoppaassa on vakiokaavio kuoresta, joka käärii käyttöjärjestelmän ympärille ja muistuttaa jonkinlaista karkkia. Kuori ei todellakaan ole muuta kuin käyttöliittymän, mukaan lukien ydin, tiedostojärjestelmä ja eri järjestelmäsoitot, ja käyttäjän välinen rajapinta. Se oli monien vuosien ajan ainoa vuorovaikutteinen käyttöliittymä, ennen kuin graafiset käyttöliittymät yleistyivät 1980-luvulla. Graafisia käyttöliittymiä voidaan pitää myös kuorityyppinä, koska ne palvelevat samoja toimintoja: ohjelmien käynnistäminen, järjestelmän määrittäminen ja tiedostojen hallinta.

Näillä nöyräpohjaisilla rajapinnoilla on yllättävän paljon voimaa. Ensinnäkin, he ovat täysimittaisia ​​ohjelmointikieliä. Ennen vieläkin tehokkaampien komentosarjojen kielten, kuten Python, ilmestymistä, komentosarjat olivat ihanteellisia sellaisten ohjelmien kirjoittamiseen, jotka eivät välttämättä tarvitse C: n voimaa. Ne ovat silti hyödyllisiä järjestelmätehtävien automatisoinnissa ja nopeassa prototyyppien muodostamisessa.

Niillä on myös useita ominaisuuksia, jotka helpottavat tiedostojen käsittelyä ja löytämistä. Yksi yleisimmin käytetyistä on "jokerimerkinnät" tai "maapallot". Lähes kaikki Unix- ja Linux-käyttäjät tuntevat "*" jokerimerkin sopimaan mihin tahansa merkkiin. Tämä on itse asiassa kuoren työ. Eri kuorilla on vielä tehokkaammat vaihtoehdot.

Yksi Unixin erityisominaisuuksista on kyky ohjata ohjelman syöttö ja lähtö. Kuori toteuttaa tämän toiminnon.

Kuori on vain uusi ohjelma, joten kuka tahansa ohjelmoija, jolla on oikeat taidot, voi luoda sen. Vuosien varrella on syntynyt useita merkittäviä kuoria.

Historia ja kuorien roundup

Vaikka käyttöjärjestelmän varhaisina päivinä oli useita Unix-kuoria, ensimmäinen niistä, jotka saivat huomattavaa tunnustusta Bell Labsin ulkopuolella, oli Stephen R. Bourne -niminen Bourne Shell. Kuorien tärkein innovaatio oli se, että se tuki strukturoidun ohjelmoinnin ominaisuuksia, mikä mahdollisti ensimmäisen kerran kuoren käytön oikeana ohjelmointikielenä. Se on niin välttämätöntä, että kaikki nykyaikaiset Unix- ja Linux-versiot käyttävät sitä edelleen, vaikka se on yleensä yksi uudemmista kuorista, jotka jäljittelevät Bourne-kuorta.

Seuraava suuri kuori oli C-kuori, lyhennettynä yleensä "csh". Tämä kuori kehitettiin UC Berkeleyssä, ja siitä tuli tärkeä osa Unixin BSD-makua. Kuten nimestä voi päätellä, sen syntaksi on suunniteltu muistuttamaan C-ohjelmointikieltä, mutta se on todella suunniteltu interaktiiviseen käyttöön.

Se sisälsi historiamekanismin, jonka avulla käyttäjät voivat palata takaisin ja toistaa kaikki aiemmin antamat komennot tarvitsematta kirjoittaa koko riviä uudelleen ja parannettua työn hallintaa, mikä helpotti useiden tehtävien suorittamista. (Muista, tämä oli aika, jolloin suurin osa ihmisistä käytti edelleen pohjaisia ​​päätteitä.)

Seuraava suuri kuori oli Korn-kuori, joka tuli myös Bell Labsista. Kuori nimettiin muuten David Kornin, ei bändin mukaan. Korn-kuoren tärkein innovaatio on komentorivien muokkauksen käyttöönotto, laajentamalla historiatoimintoa entisestään. Käyttäjät voivat palata takaisin ja muokata kirjoittamasi komentoja käyttämällä komentoja, jotka ovat samanlaisia ​​kuin vi- tai Emacs-muokkausohjelmat.

Suurimmista kuorista Bourne Again Shell tai bash on suosituin sen käyttöönoton jälkeen 80-luvun lopulla. Tämä kuori, joka on kehitetty osana GNU-projektia, sisältää C- ja Korn-kuorien innovaatiot säilyttäen samalla yhteensopivuuden Bourne-kuoren kanssa, tästä myös nimi. Se on "tavallinen" kuori useimmissa Linux-jakeluissa.

Z-kuori (zsh), joka julkaistiin ensimmäisen kerran vuonna 1990, on komentorivin käyttäjän unelma. Sen lisäksi, että siinä on suurin osa muista kuorista koostuvista tärkeimmistä ominaisuuksista, se on myös vierekkäin muokattavissa paljon tehokkaita ominaisuuksia. Yksi tehokkaimmista on rekursiivinen maapallottelu, jonka avulla käyttäjät voivat sovittaa alihakemistojen tiedostonimet, kun he antavat komentoja sen sijaan, että nykyisessä työhakemistossa olevia tiedostoja. Todella edistyneet käyttäjät voivat myös mukauttaa valmistusasetuksia, sovittamalla tiedostoja tarvitsematta kirjoittaa niitä kokonaan. Ja rasvasormisten koneiden kirjoittajille se voi myös korjata oikeinkirjoituksen. Tämä kuori on niin pitkälle edennyt, sen manuaalinen sivu on jaettu useisiin erittäin pitkiin osiin.

Scripting

Kuten aiemmin mainittiin, kuoret eivät ole vain komentoriviliittymiä, vaan tehokkaita ohjelmointikieliä. Shell-komentosarjojen kauneus on, että voit käyttää samaa kieltä sekä säännöllisessä vuorovaikutteisessa käytössä että komentosarjoissa, mikä tekee oppimiskäyrästä paljon matalampi. Nykyaikaiset kuoret sisältävät kaikki tavanomaiset ohjelmointikielen ominaisuudet, mukaan lukien virtauksen hallinta, toiminnot ja muuttujat. Joillakin heistä on jopa edistyneitä tietorakenteita, kuten assosiatiiviset taulukot.

Voimasta huolimatta kuorien ohjelmoinnissa on joitain sudenkuoppia. Suurin ongelma on, että on liian helppoa kirjoittaa skriptejä, jotka riippuvat jostakin ohjelmasta, joka ei ehkä ole toisessa järjestelmässä, tai joka riippuu tietystä Unixin tai Linuxin mausta. Siksi shell-skriptit ovat parhaiten sopivia ohjelmille, joiden tiedät toimittavan vain yhdessä järjestelmässä. Jos yrität rakentaa jotain kannettavaa, etkä halua kirjoittaa C-ohjelmaa, sinun on parasta kirjoittaa toisella skriptikielellä, kuten Perl tai Python.

Pee Unix / Linux-komentorivin kotelon alla

Unix / Linux-komentorivin pinnan alla on enemmän valtaa. Tämä artikkeli saattaa inspiroida sinua kurkistamaan suosikkisuojasi kotelon alla nähdäksesi, mitä voit todella tehdä. Jos haluat päästä shell-komentosarjoihin, kannattaa tutustua kirjoihin Unix Power Tools ja Learning the Bash Shell. Stephen R. Bournes -kuoressa oleva alkuperäinen paperi toimii myös hyvänä johdanna komentosarjojen maailmaan, vaikka se olisi vanha.