Le principali shell che si possono trovare su Unix e linux
26 ottobre 2013  //  By:   //  Linux  //  1 comment   //   704 Views

L’interfaccia a riga di comando è, quando un utente, una volta completata la procedura di autenticazione, inizia una sessione di lavoro su un terminale.

La shell ha un compito fondamentale, che è quello di fornire l’interfaccia che permette di lanciare altri programmi. Inoltre è sempre la shell che permette di usufruire di tutta una serie di ulteriori funzionalità messe a disposizione dal kernel, come il controllo di sessione.

Dato che la shell è un programma come gli altri, essa può essere realizzata in diversi modi. Ci sono stati due filoni di sviluppo, il primo deriva dalla prima shell creata, la Bourne shell, chiamata così dal nome del suo creatore.

La Bourne shell è la shell più antica e le sue funzionalità sono anche state standardizzate dallo standard POSIX.

Il secondo filone deriva da un’altra shell, realizzata con una sintassi alternativa, più simile a quella del linguaggio C, e chiamata per questo C shell.
Ciascuna shell ha dato vita a varie versioni con funzionalità più o meno avanzate; un breve elenco delle varie shell disponibili anche su GNU/Linux è il seguente:

  • La Bourne shell, la prima shell di Unix, in genere utilizzata semplicemente con il comando sh. Su sistemi che utilizzano lo standard POSIX, è di norma sostituita da ksh.
  • La Bourne-Again SHell, la bash è la shell di riferimento del progetto GNU. Viene utilizzata con il comando bash, incorpora molte funzionalità avanzate, come la storia dei comandi (detta history), l’auto-completamento dell’input sulla linea di comando, editing di linea, costrutti di programmazione complessi e molto altro.
  • La Korn Shell (dal nome dell’autore) è stata la prima ad introdurre la history (l’accesso ai comandi precedenti) e l’editing della linea di comando. Gran parte delle funzionalità avanzate non vengono attivate di default, per cui occorre un ulteriore lavoro di configurazione per utilizzarla al meglio.
  • La ash, shell minimale, viene utilizzata con il comando ash. Ha molti comandi integrati, occupa poca RAM e poco spazio disco, ed ha poche funzioni (conforme allo standard POSIX).
  • La Z shell, shell avanzata, viene utilizzata con il comando zsh. Offre praticamente le stesse funzioni della Korn shell, ed altre funzionalità avanzate, come il completamento di comandi, file e argomenti.

C shell e derivate. 

  • La C shell. Utilizza una sintassi analoga a quella del linguaggio C. In GNU/Linux non è disponibile essendo sostituita da tcsh.
  • La tcsh. Evoluzione della C shell, alla quale aggiunge history e editing di linea e varie funzionalità avanzate. Viene utilizzata con il comando tcsh. Si trova su vari Unix proprietari, ma è poco diffusa su GNU/Linux, pur essendo disponibile.

Essendo il principale strumento di lavoro di un amministratore di sistema, la scelta della shell è spesso una questione personale.

About the Author :

BI CONSULTING. Studente di Ingegneria Informatica, Sistemista Linux e appassionato di tutto ciò che sia tecnologico ma soprattutto Open Source. Distro: Debian e Arch LInux. Smartphone: Nexus / Lg G2 Buona Lettura  Visualizza il profilo su Linkedln

1 Comment to “Le principali shell che si possono trovare su Unix e linux”

Leave a reply