La shell e' il programma piu' importante di un sistema operativo unix dopo il kernel, in quanto rappresenta l'intermediario tra l'utente e il sistema operativo stesso (da qui il nome 'shell'='conchiglia', poiche' e' la superficie con cui l'utente entra in contatto quando vuole interagire col sistema...); la shell, in altre parole, e' l'interfaccia tra il cuore del sistema e il mondo esterno e per questo, anche se una sua eventuale assenza non e' critica per il funzionamento del sistema, si considera parte integrante del sistema operativo.
Questo interprete tra l'utente e il sistema e' in grado di eseguire i comandi impartiti dall'utente attraverso una riga di comando oppure di eseguire uno script scritto nel linguaggio consentito dalla shell stessa (per script intendo un programma interpretato, eseguito senza essere compilato.. vi ricordate i file batch del dos ? ecco..).
Esistono diversi tipi di shell che offrono piu' o meno 'agevolazioni' e diversi linguaggi di scripting, diversa gestione delle variabili d'ambiente, eccetera; di seguito riporto le piu' diffuse:
- Bourne shell (sh)
Scritta da Steve Bourn dei Bell Labs.
E' questa la shell Unix originale: piuttosto semplice, non fornisce le agevolazioni interattive presenti invece nelle shell piu'recenti.
Fornisce un linguaggio di scripting relativamente semplice.
- C shell (csh)
Scritta all'universita' di Berkley, in California.
Il suo linguaggio di scripting, come si deduce dal nome, richiama molto la sintassi del linguaggio C.
- TC Shell (tcsh)
E' una versione modificata della C shell che introduce nuove caratteristiche per rendere piu' agevole l'interazione con l'utente.
- Korn shell (ksh)
Scritta da David Korn dei Bell labs.
E' la shell standard dei sistemi Unix moderni; fornisce le stesse prestazioni della C e TC shell unitamente a un linguaggio di programmazione simile a quello della Bourne shell. Si puo' quindi dire che e' la Bourne shell evoluta con le prestazioni delle shell piu' recenti.
- Bourne Again Shell (bash)
Scritta dalla Free Software Foundation.
Indicativamente, e' la versione Free Software della Korn shell.
La shell attivata al momento del login viene definita dal root quando vi crea l'account. Per sapere che shell avete per le mani basta chiedere l'output della variabile associata (echo $SHELL).
Per terminare una shell usate "logout" (per una shell di login), "exit" (per una shell interattiva"), nulla (per una shell attivata apposta per eseguire uno script (si termina in maniera silenziosa al termine dello script).
Have fun
Questo interprete tra l'utente e il sistema e' in grado di eseguire i comandi impartiti dall'utente attraverso una riga di comando oppure di eseguire uno script scritto nel linguaggio consentito dalla shell stessa (per script intendo un programma interpretato, eseguito senza essere compilato.. vi ricordate i file batch del dos ? ecco..).
Esistono diversi tipi di shell che offrono piu' o meno 'agevolazioni' e diversi linguaggi di scripting, diversa gestione delle variabili d'ambiente, eccetera; di seguito riporto le piu' diffuse:
- Bourne shell (sh)
Scritta da Steve Bourn dei Bell Labs.
E' questa la shell Unix originale: piuttosto semplice, non fornisce le agevolazioni interattive presenti invece nelle shell piu'recenti.
Fornisce un linguaggio di scripting relativamente semplice.
- C shell (csh)
Scritta all'universita' di Berkley, in California.
Il suo linguaggio di scripting, come si deduce dal nome, richiama molto la sintassi del linguaggio C.
- TC Shell (tcsh)
E' una versione modificata della C shell che introduce nuove caratteristiche per rendere piu' agevole l'interazione con l'utente.
- Korn shell (ksh)
Scritta da David Korn dei Bell labs.
E' la shell standard dei sistemi Unix moderni; fornisce le stesse prestazioni della C e TC shell unitamente a un linguaggio di programmazione simile a quello della Bourne shell. Si puo' quindi dire che e' la Bourne shell evoluta con le prestazioni delle shell piu' recenti.
- Bourne Again Shell (bash)
Scritta dalla Free Software Foundation.
Indicativamente, e' la versione Free Software della Korn shell.
La shell attivata al momento del login viene definita dal root quando vi crea l'account. Per sapere che shell avete per le mani basta chiedere l'output della variabile associata (echo $SHELL).
Per terminare una shell usate "logout" (per una shell di login), "exit" (per una shell interattiva"), nulla (per una shell attivata apposta per eseguire uno script (si termina in maniera silenziosa al termine dello script).
Have fun