Care este coaja de bash și de ce este atât de important pentru Linux?

May 19, 2025
General
FatmAwati Achmad Zaenuri / Shutterstock.com

Coaja de bash are vârsta de peste 30 de ani și continuă să fie puternică. Ce face, de unde a venit și de ce este încă cea mai comună coajă pe sistemele Linux?

Ce este o coajă?

Când deschideți o fereastră terminală și comenzi de tip, ceva trebuie să ia ceea ce ați scris, să vă dați seama ce intenționați și să executați sarcinile pe care le-ați cerut. Software-ul care face acest lucru este coaja. O cochilie este un interpret de comandă. Scanează ceea ce ați introdus și scoateți comenzile, numele directorului, numele fișierelor și numele programelor, astfel încât să vă ducă să aflați ce încercați să obțineți.

Oamenii folosesc adesea frazele "Windows terminal", "linia de comandă" și "coajă" interschimbabil, dar sunt trei lucruri distincte. O fereastră terminală este o reprezentare software a unui fizic Terminalul TELETYPE. . Vă oferă o conexiune la computer. Pentru a face ceva util, trebuie să puteți introduce instrucțiuni la o linie de comandă. Linia de comandă este furnizată de cochilie, iar fereastra Terminal vă permite să accesați carcasa.

Shells vă permit, de asemenea, să faceți parcelă o colecție de comenzi într-un fișier text numit un script. Toate comenzile din script sunt executate pentru dvs. de fiecare dată când executați scenariul. Scripturile oferă eficiența, repetabilitatea și comoditatea.

Primul Unix. Shell era Thompson Shell. , numit SH . A fost scrisă de Ken Thompson. , care este posibil cel mai important membru cheie al părinților fondatori inițial inițial la Bell Labs. . Cochilia Thompson a fost folosită ca o coajă UNIX implicită până la versiunea Unix 6. A fost înlocuită de Bourne Shell. În versiunea 7 a Unix în 1979.

LEGATE DE: Ce este Unix, și de ce contează?

Cochilia Bourne.

Cochilia Bourne, scrisă de Stephen Bourne. , a fost o înlocuire modernizată pentru coaja Thompson. Sa început chiar și folosind aceeași comandă ca și cochilia Thompson, SH , Pentru a menține compatibilitatea înapoi cu scripturile existente. Compatibilitatea înapoi a fost importantă, dar au fost incluse noi caracteristici care au oferit multă funcționalitate pe care o folosim astăzi.

Shell Bourne a fost o coajă interactivă și un limbaj de scripting. A sprijinit în prim plan și o sarcină de fond și controlul elementar al locurilor de muncă. Au fost adăugate țevi și redirecționarea, împreună cu îmbunătățiri ale buclelor de manipulare.

Shell-ul conține acum câteva comenzi încorporate, ceea ce înseamnă că nu a trebuit să treacă totul la utilități externe, făcându-l mai eficient. Cochilia Bourne chiar acceptată "Aici documente" o modalitate elegantă de a automatiza trimiterea datelor în comenzi.

Bacul Bourne a ridicat barul și a devenit noul standard.

LEGATE DE: Cum se utilizează "aici documente" în Bash pe Linux

Nașterea bash

În 1984, când Proiectul GNU. și-a anunțat intenția de a face o clonă Unix gratuit scrisă de la pământ în sus și cu a Noua licențiere permisivă Echipa avea nevoie de o cochilie. Când un voluntar care lucrase la o cochilie pentru proiectul GNU nu a reușit să livreze nimic, deloc, Brian Fox. a fost însărcinată cu scrierea unei clone a cochiliei burine.

A fost numit Bourne din nou coajă , sau bash. Acest lucru a fost parțial în omagiu pentru Stephen Bourne și parțial WordPlay de dragul ei. După eliberarea sa în 1989, Chet Ramey a contribuit cu unele remedii de bug-uri la bash. El a devenit în cele din urmă un co-întreținător al cochiliei de bash. În zilele noastre, el este încă întreținătorul proiectului Bash.

Linus torvalds. , Creatorul kernelului Linux, a spus că primele două programe pe care le-a fugit la noul său kernel în 1991 au fost bash și GCC. , Compilerul lui Gnu. . Asocierea utilităților GNU cu kernelul Linux a fost reciproc avantajoasă. Sistemul de operare GNU a avut nevoie de un kernel, iar kernelul Linux avea nevoie de altceva care constituie o clonă UNIX.

Deoarece Bash este coaja GNU standard, a devenit coaja standard pe toate distribuțiile GNU / Linux. Linux a înflorit până la punctul în care stau acum la un an Suma uimitoare a lumii moderne . Shell Bash a survenit și valul de succes.

Bash încorporează și se îmbunătățește pe setul de caracteristici al cochiliei Bourne, dar, de asemenea, sa inspirat din alte cochilii, cum ar fi C shell. ( csh. ) si Kornshell. ( KSH. ). De exemplu, extinderea tildei " ~ "La valoarea deținută în $ HOME Variabila de mediu provine din cochilia C și FC. Comanda care invocă editorul implicit la comenzile din Istoria comenzii vine de la Kornshell.

Bash a introdus fișiere de configurare, cum ar fi Fișierele ".bashrc" și ".bash_profile" . Editarea liniei de comandă pe bash a depășit capacitățile de cochilii anterioare. Manipularea comenzilor executate anterior în istoria comenzii a fost o versiune îmbunătățită a caracteristica "Bang Istoric" de cochilii C. Expansiunea Brace a fost o caracteristică care lipsea din cochilia Bourne care a fost implementată în Bash ca o supersetă a funcționalității găsite în cochilia C. Arrays au fost îmbunătățite prin eliminarea limitelor de mărime. Expansiunea parametrilor în promptul de comandă permite utilizatorilor să-și personalizeze promptul de bash.

Cochilia de bash își propune să fie compatibilă cu POSIX P1003.2 / ISO 9945.2 Shell și utilități standard.

LEGATE DE: Linux Kill Kill Commercial Unix?

De ce bash este încă important

Omar Tursic / Shutterstock.com

Bash nu ar fi putut să-l ducă pe această lungă perioadă de 30 de ani - ca o coajă de Linux implicită dacă nu era la locul de muncă. Datorită duratei sale de viață îndelungată și a bazei masive de utilizare, bashul este matur și foarte stabil. Există multe cochilii alternative disponibile, de la veterani precum cochilia C și Kornshell la cochilii mai noi ca Z coajă ( Zsh. ) si CHELLY interactivă prietenoasă ( peşte ). Atât coaja Z, cât și cochilia de pește au unele caracteristici care Bash nu are și modalități mai bune de a obține unele dintre aceleași lucruri pe care le face Bash. Deci, de ce este bash încă coaja dominantă?

Din toate mașinile Linux am fost chemat vreodată să administreze, nu-mi amintesc un singur care nu avea bash ca coajă. Mașini UNIX, da, dar cutii Linux, nr. Este bash de fiecare dată. Această familiaritate vă permite să faceți să lucrați repede și să fiți imediat departe. Știți deja Bash, deci nu există o curbă de învățare. Nu primiți Hamstrung de mici diferențe în sintaxa care vă duc în cercuri care încearcă să-și dea seama de ce ceva nu funcționează. Timpul petrecut imaginând ceea ce ar trebui să fie incantația acest Shell este timpul mort, deci este în interesul afacerii clientului să utilizeze o coajă bine cunoscută și utilizată pe scară largă.

Folosind o cochilie care este-sau încearcă foarte mult să fie compatibilă cu mai multe distribuții Linux, dar ceea ce contează mai mult este compatibilitatea cu versiunile anterioare. Efectuarea de schimbări care ar putea sparge scripturile existente este evident neatractivă. Atractiv sau nu, uneori, trebuie doar să muști glonțul. La 3 septembrie 1967, Suedia a schimbat de la conducere la stânga la conducere pe dreapta. La ora 4:50 a.m., tot traficul a trebuit să se oprească, să se întoarcă încet pe cealaltă parte a drumului și să se oprească încă o dată. La ora 5:00 a.m., traficul ar putea continua, cu toată lumea care conduce acum în dreapta.

Va fi înlocuit vreodată?

Ceea ce ar putea părea de neconceput acum se poate întâmpla de fapt mai târziu. Dacă nu vrem să ne agățim de convingerea că vom folosi cu toții bash până la doomsday, adevărul este probabil că într-o zi, Bash va fi înlocuit ca o carcasă implicită Linux - fie că este încă coajă standard GNU sau nu. Sau poate că va fi bash, dar este îmbunătățită cu mult dincolo de cochilie pe care o folosim astăzi. Dar ceea ce ia locul bash de astăzi va trebui fie să fie complet (sau foarte aproape) compatibil înapoi sau merită răsturnarea, indiferent de beneficiile.

Acest lucru nu este fără precedent. De cand Versiunea 10.15. de Macos. , Apple a scăzut bash și a adoptat coaja Z ca coajă implicită. Apple are probleme cu licența publică generală GNU (GPL) V.3. Din păcate, aceasta este licența pe care o folosește Bash. Ultima versiune de Bash a fost lansată în conformitate cu GPL V2 a fost versiunea 3.2 a lui 2007. Versiunea curentă este de 5.1. Apple era aproape un deceniu și jumătate în urmă. Singura modalitate prin care Apple ar putea include o coajă actualizată fără să se deplaseze la GPL V.3 a fost să se mute într-o altă cochilie cu totul. La Apple, care merita răsturnarea. (Cu toate acestea, puteți Comutați înapoi la Bash pe MacOS Dacă o preferați!)

Există o lume de diferență între stația de lucru a utilizatorului de putere și un server Linux Linux de la Business, pe care trebuie să-l administrați de la distanță Peste o conexiune SSH . Din aproape 1,5 milioane de servere găzduite de Amazon EC2, Peste 93% rulează Linux . Aproape 75% din serverele web rulează Linux. . Organizații precum Red Hat, Amazon și Google utilizează Linux In-House.

Este greu să vă imaginați ce beneficii ar putea oferi o nouă coajă care să justifice acest tip de răsturnare globală. De aceea, bashul este cimentat în loc.

Chiar și Microsoft oferă acum o cale de a Rulați o coajă de bash bazată pe Linux pe Windows 10 A!


General - Cele mai populare articole

Cum Wondershare Pdfelement permite editarea PDF mai rapidă, mai simplă și mai fină decât oricând

General Jan 21, 2026

Fie că sunteți un freelancer care vă scufundați degetele de la picioare în activități independente, un antreprenor cu câțiva ani sub centura dvs., un proprietar de afaceri mici ..


De ce nu arată fotografiile mele ca fotografii "profesionale"?

General Jun 26, 2025

Snapsure. Fotografii "profesionale" - sau cel puțin, fotografii de calitate profesională - sunt peste tot, de la postările Instagram și anunțurile site-ul..


Cum să vezi istoricul prețului Amazon al unui produs

General Jun 21, 2025

Andrii Yalanskyi / Shutterstock Prețurile la Amazon schimba constant. Cunoașterea istoriei prețurilor vă poate oferi o margine în Găsire..


Ce este OLED?

General Jul 9, 2025

UGIS RIPA / Shutterstock.com Dacă vă gândiți să cumpărați un televizor nou sau smartphone, ați fi văzut termenul "OLED" utilizat pentru a descrie tipu..


Bose QuietComfort 45 Promise Chiar și o mai bună zgomot de anulare

General Aug 31, 2025

Bose. Bose doar anunțat Căștile de liniște 45 ca succesor al iubitului QuietComfort 35 al II-lea și promite o anulare și mai bună a zgomotului și o cal..


Cum se adaugă un bot la discordie

General Aug 22, 2025

Adăugând un bot la dvs. Discordie Server, puteți automatiza multe sarcini, cum ar fi monitorizarea comportamentului membrilor, generarea de meme și gestionarea cozilor de ..


Cum se utilizează un controler Stadia cu o altă platformă

General Sep 5, 2025

Michael Crider. Stadia ar putea fi un serviciu de joc video bazat pe cloud, dar încă mai puteți juca folosind un controler fizic în ciuda lipsei unei conso..


Cum se utilizează zoom optic pe o cameră iPhone

General Oct 18, 2025

măr Când doriți să măriți subiecții în fotografie, zoomul digital poate introduce zgomotul nedorit al imaginii. Cu toate acestea, iPhone-ul dvs. poate oferi "zo..


Categorii