Shell (informatică)

De la Wikipedia, enciclopedia liberă
Jump to navigation Jump to search

În domeniul informaticii, shell (engleză: carapace), este principala interfață de comunicare între utilizator și sistemul de operare. Shell-ul este necesar pentru a invoca sau a executa diferite programe disponibile pe calculator. Cel mai folosit shell este bash. Împreună cu kernelul, shell este una dintre componentele principale ale unui sistem de operare. [1]

Captură bash

Scurt istoric[modificare | modificare sursă]

Primul shell clasic a fost scris pentru Unix în 1976 de Steve Bourne, la laboratoarele Bell ale companiei AT&T. Programul se numea simplu sh sau Bourne shell. Shell-ul Bourne introducea mai multe concepte revoluționare, și era mai curând proiectat pentru utilizarea sub formă de interpretor, și mai puțin pentru cea interactivă.

La sfârșitul anilor '70 la universitatea Berkeley din California odată cu dezvoltarea variantei de Unix BSD, Bill Joy a scris un nou shell numit C shell, sau csh. Acest shell introduce facilități foarte utile pentru execuția interactivă, dar nu era compatibil cu sh.
Varianta mai nouă tcsh adaugă câteva îmbunătățiri, cum ar fi finalizarea numelor de fișiere, editare online a comenzilor. Tcsh este shell-ul nativ pentru sistemele bazate pe BSD, cum ar fi FreeBSD.

În 1984 David Korn (laboratoarele Bell), a modernizat shell-ul Bourne adăugîndu-i facilități interactive csh. Astfel s-a născut shell-ul KornShell sau ksh, compatibil cu Bourne shell.

Deoarece inițial ksh era disponibil ca software proprietar numai printr-o licență deținută de AT&T, au fost create o serie de alternative gratuite și open source. Acestea includ bash, pdksh, mksh, zsh, scsh, etc. [2]. Shell-ul bash (Bourne-again shell) moștenește din ideile lui ksh, dar conține și elemente din csh, fiind shell-ul standard pe sistemele GNU/Linux.

Windows PowerShell 1.0

În 1981 Microsoft a lansat sistemul de operare MS-DOS care includea un shell simplist, numit COMMAND.COM. Acesta a rămas, cu minore îmbunătățiri, shell-ul standard chiar și sub Windows Me.
În Windows 3.1 multe dintre funcțiunile unui shell sunt luate de programul grafic Command Manager.

Windows shell reprezintă o evoluție a shell-lui fiind interfața grafică pentru sistemul de operare Windows 95. Este identificat cu File Explorer, o componentă Windows care poate naviga pe întregul spațiu al shell ului.

Începând cu anul 2006 a fost lansat PowerShell 1.0 pentru Windows XP SP2, Windows Server 2003 SP1 și Windows Vista.

Shell-ul implicit al Windows poate fi înlocuit cu o serie de programe shell de terță parte concepute pentru a fi folosite în locul celei standard.[3][4]

Tipuri de shell[modificare | modificare sursă]

În funcție de tipul interfeței, shell poate fi cu interfață text (linie de comandă) sau interfață grafică.

Shell text[modificare | modificare sursă]

Shell-ul textual este un program cu interfață în linie de comandă, care rulează în interiorul unui terminal text. Utilizatorul introduce o comandă, iar programul executat interacționează cu utilizatorul și/sau afișează date pe terminal. Cel mai cunoscut shell text este bash (sh).

Shell-urile text ale sistemelor Unix integrează un limbaj de scripting numit shell script ce conține o secvență de comenzi ale shell-ului cu care se pot scrie programe reale pentru a automatiza administrarea sistemului. Sintaxa acestui limbaj este o extensie a celor utilizate interactiv. În acest fel, un script shell este un instrument esențial pentru sarcinile administrative și alte rutine repetitive care nu necesită funcționalități ale unor limbaje de programare avansate.

În Windows, nu există nici o separare între emulatorul terminal și shell. În majoritatea versiunilor Microsoft Windows, emulatorul de terminal și shell-ul asociat pot fi accesate prin pornirea programului cmd sau command.

Shell-urile text sunt utilizate în primul rând de utilizatori experimentați, deoarece trebuie cunoscute comenzile care se introduc.

Exemple shell text

  • bash (sh)
  • C shell
  • Z shell (zsh)
  • Korn shell (ksh)
  • tcsh
  • CL și iSeries QSHELL - (IBM OS/400)
  • CCP - (CP/M)
  • DCL - (VMS/OpenVMS)
  • FreeCOM - (FreeDOS)
  • Debian Almquist shell - utilizat în Debian și derivate pentru a rula scripturi de sistem*cmd.exe - familia Windows NT
  • COMMAND.COM - MS-DOS
  • command - sisteme Windows
  • Windows PowerShell - shell avansat disponibil din versiunea Windows XP.

Shell grafic[modificare | modificare sursă]

GNOME Shell

Cu ajutorul interfeței grafice calculatorul și conținutul acestuia nu mai sunt reprezentate de linii de text, ci de pictograme și ferestre care permit efectuarea de operații complexe cu ajutorul unui mouse.

Shell-urile grafice oferă mijloace pentru manipularea programelor bazate pe interfață grafică permițând operațiuni precum deschiderea, închiderea, mutarea și redimensionarea ferestrelor, făcând un sistem de operare mai ușor de accesat. Interfețele grafice pot fi incluse în mediile desktop sau pot fi furnizate separat.

Linux, MacOS și Windows sunt exemple de sisteme de operare utilizate pe scară largă prin intermediul shell-urilor grafice.

Exemple shell grafic
Cele mai populare shell-uri grafice sunt GNOME Shell, KDE Plasma, Unity (Linux), Finder (MacOS) și File Explorer (Microsoft Windows).

Vezi și[modificare | modificare sursă]

Referințe și note[modificare | modificare sursă]

Legături externe[modificare | modificare sursă]