Tipi di shell in Linux
In Linux e Unix, una shell si riferisce a un programma che viene utilizzato per interpretare i comandi digitati che l'utente invia al sistema operativo. L'analogia più vicina in Windows è il prompt dei comandi DOS. Tuttavia, a differenza di Windows, i computer Linux e Unix consentono all'utente di scegliere quale shell desidera utilizzare.
Bourne Shell
La shell Bourne originale prende il nome dal suo sviluppatore presso i Bell Labs, Steve Bourne. È stata la prima shell utilizzata per il sistema operativo Unix ed è stata ampiamente superata in termini di funzionalità da molte delle shell più recenti. Tuttavia, tutte le versioni Unix e molte Linux consentono agli utenti di passare alla Bourne Shell originale, nota semplicemente come "sh", se scelgono di rinunciare a funzionalità come il completamento dei nomi dei file e le cronologie dei comandi aggiunte dalle shell successive.
Shell C
La shell C, come suggerisce il nome, è stata progettata per consentire agli utenti di scrivere programmi di script di shell utilizzando una sintassi molto simile a quella del linguaggio di programmazione C. È noto come "csh".
Shell TC
La shell TC è un'espansione della shell C. Ha tutte le stesse funzionalità, ma aggiunge la possibilità di utilizzare le sequenze di tasti del programma di elaborazione testi Emacs per modificare il testo sulla riga di comando. Ad esempio, gli utenti possono premere Esc-D per eliminare il resto della parola evidenziata. È anche noto come "tcsh".
Conchiglia Korn
Korn Shell è stato scritto anche da uno sviluppatore di Bell Labs, David Korn. Tenta di unire le caratteristiche della shell C, della shell TC e della shell Bourne in un unico pacchetto. Include anche la possibilità per gli sviluppatori di creare nuovi comandi shell in caso di necessità.
È noto come "ksh".
Bourne-Again Shell
La shell Bourne-Again è una versione aggiornata della shell Bourne originale creata dalla Free Software Foundation per il suo progetto GNU open source. Per questo motivo, è una shell ampiamente utilizzata nella comunità open source.
La sua sintassi è simile a quella utilizzata dalla shell Bourne, tuttavia incorpora alcune delle funzionalità più avanzate presenti nelle shell C, TC e Korn.
Tra le funzionalità aggiuntive che mancava a Bourne vi sono la possibilità di completare i nomi dei file premendo il tasto TAB, la capacità di ricordare una cronologia dei comandi recenti e la possibilità di eseguire più programmi in background contemporaneamente.
È noto come "bash".