Bash Shell on yli 30-vuotias ja edelleen vahva. Mitä se tekee, mistä se tuli, ja miksi se on edelleen yleisin Linux-järjestelmien kuori?
Mikä on kuori?
Kun avaat päätelaitteen ikkunan ja kirjoita komennot, jotain on ryhdyttävä, mitä olet kirjoittanut, selvittää, mitä olet suunnitellut ja suorita tehtävät. Ohjelmisto, joka tekee tämän kuoren. Shell on komentotulkki. Se skannaa, mitä olet kirjoittanut ja poimii komennot, hakemiston nimet, tiedostonimet ja ohjelmien nimet niin, että se voi selvittää, mitä yrität saavuttaa.
Ihmiset käyttävät usein lausekkeita "Terminal Windows," komentorivi "ja" Shell "-vaihtoehtoisesti, mutta ne ovat kolme erillistä asiaa. Liitäntäikkuna on fyysisen ohjelmiston edustus TeleType-päätelaite . Se antaa sinulle yhteyden tietokoneeseen. Jotta voit tehdä mitään hyödyllistä, sinun on voitava kirjoittaa ohjeita komentorivillä. Komentorivi toimittaa kuoren ja päätelaitteen avulla voit käyttää kuoren.
Shells ansiosta voit myös paketti komennon komentoihin tekstitiedostoksi nimeltä Script. Kaikki käsikirjoituksen kaikki komennot suoritetaan sinulle joka kerta, kun suoritat komentosarjan. Skriptit toimittavat tehokkuutta, toistettavuutta ja mukavuutta.
Ensimmäinen
Unix
Shell oli
Thompson Shell
, nimeltään
sh
. Se on kirjoitettu
Ken Thompson
, joka on mahdollisesti kaikkein tärkein jäsen alkuperäisen UNIX perustavan isien
Bell Labs
. Thompson-kuori käytettiin oletusarvoisena UNIX-kuorina UNIX-versiossa 6. Se korvattiin
Bourne Shell
Unixin versiossa 7 vuonna 1979.
Liittyvät: Mikä on UNIX ja miksi se merkitsee?
Bourne Shell
Bourne Shell, kirjoitettu
Stephen Bourne
, oli päivitetty korvaus Thompson Shellille. Se alkoi jopa käyttää samaa komentoa kuin Thompson Shell,
sh
, Säilyttää taaksepäin yhteensopivuus olemassa olevien komentosarjojen kanssa. Taaksepäin yhteensopivuus oli tärkeä, mutta sisällytettiin uusia ominaisuuksia, jotka tarjosivat paljon toimivuutta, jota käytämme tänään.
Bourne Shell oli vuorovaikutteinen kuori ja komentokieli. Se tuki etualan ja taustan tehtävän suorittamista ja peruskoulutusta. Putket ja uudelleenohjaus lisättiin sekä silmukoiden käsittelyssä.
Kuori sisälsi nyt joitain sisäänrakennettuja komentoja, mikä tarkoittaa, että sen ei tarvinnut siirtää kaikkea ulkopuolisille apuohjelmille, mikä tekee siitä tehokkaamman. Bourne Shell jopa tukenut "Täällä asiakirjat" Tyylikäs tapa automatisoida tietojen lähettäminen komennoksi.
Bourne Shell nosti baarin ja tuli uusi standardi.
Liittyvät: Kuinka käyttää "Täällä asiakirjat" bashissa Linuxissa
Bash syntyminen
Vuonna 1984, kun GNU-projekti ilmoitti aikomuksensa tehdä ilmaisen UNIX-kloonin, joka on kirjoitettu maasta ylöspäin ja a Uusi, salliva lisensointi - Tiimi tarvitsi kuoren. Kun vapaaehtoinen, joka oli työskennellyt GNU-projektin kuoressa, ei toistuvasti toimittanut mitään, Brian Fox tehtiin kirjoittamalla klooni Bourne Shell.
Se kopioitiin Bourne uudelleen kuori tai bash. Tämä oli osittain kunnianosoitus Stephen Bourne ja osittain Wordplay sen vuoksi. Sen jälkeen, kun se on julkaistu vuonna 1989, Chet Ramey myötävaikutti joitakin virheen korjauksia bashille. Hänestä tuli lopulta bash-kuoren yhteismiehistö. Nykyään hän on edelleen bash-projektin ylläpitäjä.
Linus Torvalds
, Linux-ytimen luoja on sanonut, että ensimmäiset kaksi ohjelmaa, jotka hän juoksi uudella ytimellään vuonna 1991, olivat bash ja
gcc
,
GNU: n kääntäjä
. Parinmuodostus GNU apuohjelmat Linux-ytimen oli hyödyttää molempia osapuolia. GNU käyttöjärjestelmän tarvitsi ydin ja Linux-ytimen tarvittavat kaikkea muuta, joka muodostaa Unix klooni.
Koska Bash on vakio GNU kuori, siitä tuli standardi kuori GNU / Linux-jakeluissa. Linux kukoisti siihen pisteeseen, että se nyt tukee hämmästyttävää määrä nykymaailman . Bash shell surfed että aalto menestystä myös.
Bash sisältää sekä parannetaan ominaisuuksien valikoiman Bourne kuori, mutta se myös käytti apuna muita kuoria, kuten
C shell
(
csh
) ja
Korn Shell
(
ksh
).). Esimerkiksi, laajennus tilde ”
~
”Arvoon pidetään
$ HOME
ympäristömuuttuja tulee C Shell, ja
fc
komento, joka vetoaa oletusmuokkaimen on komennot
komentojen
tulee Korn Shell.
Bash käyttöön asetustiedostoihin kuten ”Bashrc” ja ”.bash_profile” -tiedostot . Komentorivin muokkaus Bash ylittivät ominaisuuksia aiempien kuoret. Manipulointi aiemmin tehty komentoja komentojen oli parannettu versio C kuoret ”Bang historia” ominaisuus. Ahdin laajeneminen oli ominaisuus, joka puuttui Bourne kuori, joka on toteutettu Bash kuin pääjoukko toimintoja esiintyy C-kuori. Taulukot parannettiin poistamalla niiden kokorajoitukset. Parametri laajennus komentokehotteen avulla käyttäjät voivat räätälöidä Bash nopeaa.
Bash kuori pyritään oltava yhteensopiva POSIX- P1003.2 / ISO 9945,2 Shell ja Utilities standardia.
Liittyvät: Onko Linux Tapa Kaupalliset Unix?
Miksi Bash on edelleen tärkeää
Bash ei olisi kestänyt näin pitkään yli 30 vuotta, koska oletuksena Linux kuori, jos se ei tehtäviensä tasalla. Koska sen pitkä käyttöikä ja massiivinen käyttäjäkunta, Bash on kypsä ja erittäin vakaa. On olemassa monia vaihtoehtoisia kuoret saatavilla vuodesta veteraanit kuten C Shell ja Korn Shell uudempia kuoret kuten
Z kuori (
zsh
)
ja
Ystävällinen Interactive Shell
(
kalastaa
).). Sekä zsh ja kala kuori on joitakin ominaisuuksia, jotka Bash ei sekä luultavasti parempia keinoja saavuttaa joitakin samoja asioita, Bash ei. Joten miksi Bash edelleen hallitseva kuori?
Kaikista Linux koneita olen koskaan pyydetty hallinnoida, en muista ainuttakaan joka ei ollut Bash kuin kuori. Unix koneita, kyllä, mutta Linux laatikot, ei. On Bash joka kerta. Että tuntemus voit töihin nopeasti ja olla tehokas heti. Tiedät jo Bash, joten mitään oppimiskäyrä. Et saa lamaannuttavat pieniä eroja syntaksin että olet kehää yrittää selvittää, miksi jokin asia ei toimi. Aika kuvauksen, mitä loitsua pitäisi olla Tämä kuori on kuollut aika, joten se on asiakkaan etu liiketoiminnan käyttää tunnettuja ja laajalti käytetty kuori.
Käyttämällä kuori, joka on-tai yrittää kovasti olla-POSIX yhteensopiva asiat useissa Linux-jakeluissa, mutta mikä tärkeämpää on yhteensopiva aiempien julkaisujen. Muutosten tekeminen, jotka voisivat rikkoa nykyisiä skriptit on tietysti houkuttelevaa. Houkutteleva tai ei, joskus, sinun täytyy vain urheasti. Syyskuu 3, 1967 Ruotsi vaihtoi ajo vasemmalla ajo oikealla. Klo 04:50, kaikki liikenne oli pakko lopettaa, hitaasti tehdä sen tavalla toiselle puolelle tietä, ja lopeta kerran. Klo 05:00, liikenne voisi edetä, kaikkien kanssa nyt ajamaan oikealla.
Will Bash milloinkaan korvata?
Mikä saattaa tuntua käsittämättömältä nyt, voi todellakin tapahtua myöhemmin. Ellei haluamme tarttua vakaumukseen, että me kaikki käytämme bash kunnes tuomiopäivä, totuus on todennäköistä, että eräänä päivänä bash korvataan oletusarvona Linux-kuori-onko se vielä GNU-standardi kuori vai ei. Tai ehkä se on bash, mutta paransi kauas kuori, jota käytämme tänään. Mutta mikä tahansa tämän päivän bashin paikka on joko täysin (tai hyvin lähes) taaksepäin yhteensopiva tai kannattaa mullistaa, riippumatta hyödyt.
Tämä ei ole epätasainen. Siitä asti kun Versio 10.15 of Mac käyttöjärjestelmä , Apple on pudonnut bash ja hyväksynyt Z-kuoren oletuskuoriksi. Appleilla on ongelmia GNU: n yleisen julkisen lisenssin (GPL) V.3 kanssa. Valitettavasti tämä on lisenssi, joka bash käyttää. GPL V.2: n alla julkaistun bashin viimeinen versio oli 2007-versio 3.2. Nykyinen versio on 5.1. Apple oli lähes vuosikymmen ja puoli takana. Ainoa tapa, jolla Apple voi sisältää ajan tasalla olevan kuoren siirtymättä GPL V.3: lle oli siirtyä eri kuori kokonaan. Applelle, joka oli arvokkaan arvokkain. (Kuitenkin voit silti Vaihda takaisin bash macos Jos haluat sen!)
Käyttäjän työaseman ja linja-business Linux -palvelimen välillä on erilainen ero, jota sinun on annettava etänä SSH-yhteyden yli . Lähes 1,5 miljoonaa Amazon EC2 isännöity palvelimia, Yli 93% käyttää Linuxia . Lähes 75% web-palvelimista ovat käynnissä Linux . Järjestöt, kuten Red Hat, Amazon ja Google käyttävät Linux-talon.
On vaikea kuvitella, mitä etuja uusi kuori voisi tarjota, että se oikeuttaisi tällaista maailmanlaajuista mullistusta. Siksi bash on sementoitu paikallaan.
Jopa Microsoft tarjoaa nyt tien Suorita Linux-pohjainen bash-kuori Windows 10: ssä !