Shell (informatica): differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
Nessun oggetto della modifica |
Funzionalità collegamenti suggeriti: 3 collegamenti inseriti. |
||
(30 versioni intermedie di 22 utenti non mostrate) | |||
Riga 1:
{{F|sistemi operativi|marzo 2013}}
[[File:Gnome-3.18.2-showing-overview.png|thumb|upright=1.4|L'interfaccia grafica di [[GNOME]] dei sistemi [[GNU/Linux]] e [[Solaris (sistema operativo)|Solaris]]]]
La '''shell''' (detta
Il nome "shell" proviene dall'[[lingua inglese|inglese]] e significa "guscio", a conferma del fatto che questa componente viene considerata l'involucro, la parte visibile del sistema ed è dunque definibile come l'[[interfaccia utente]] o il programma [[software]] che la rende possibile. L'interfaccia di una ''shell'' può essere [[Interfaccia grafica|grafica]] (GUI), testuale ([[Text-based user interface|TUI]]) o [[Interfaccia a riga di comando|a riga di comando]] (CLI).
Nei moderni sistemi è possibile utilizzarne più di una nello stesso ambiente.
== Descrizione ==
In generale esistono molti tipi di ''shell'', che si dividono principalmente in ''testuali'' e ''grafiche'':
* quando si parla semplicemente di ''"shell"'', o anche di "terminale", si intende di solito una ''shell'' testuale con cui l'utente interagisce attraverso un [[terminale (informatica)|terminale]] o un [[terminale virtuale]] (quest'ultimo può anche far parte della ''shell'' stessa anziché essere un programma a parte) tramite un'[[interfaccia a riga di comando]];
* nel caso di ''shell'' grafiche è comune fare riferimento ai cosiddetti
=== Shell testuali ===
{{vedi anche|Interfaccia a riga di comando}}
Una ''shell'' testuale (o interprete dei comandi) è un programma dotato di un'[[interfaccia a riga di comando]], che viene eseguito all'interno di un [[terminale (informatica)|terminale testuale]]. L'utente digita un comando, ovvero richiede l'esecuzione di un programma, e il programma eseguito può interagire con l'utente e/o mostrare dati sul terminale.▼
[[File:Award_BIOS_setup_utility.png|thumb|Il setup del [[BIOS]] è molto spesso a interfaccia testuale]]
[[File:Windows_PowerShell_1.0_PD.png|thumb|[[Windows PowerShell]] ha una tipica interfaccia a riga di comando.]]
Una ''shell'' testuale (o interprete dei comandi) può definirsi in due varianti.
La prima è costituita da un ambiente simile alle interfacce grafiche, comprensivo quindi di finestre e pulsanti ma dall'assenza di qualsiasi componente grafica. Si utilizza tramite tastiera e, talvolta, mouse.
▲
Una delle più note ''shell'' testuali è il tradizionale "prompt dei comandi", ben noto a quanti hanno familiarità con i sistemi operativi DOS ([[MS-DOS]], [[DR-DOS]], [[FreeDOS]]). Per gli utenti di [[MS-DOS]] e di alcuni dei sistemi [[Microsoft Windows]] la ''shell'' è il programma [[command.com]]. Anche i sistemi della famiglia [[Windows NT]] dispongono di una ''shell'' testuale, il programma [[cmd.exe]].
Line 21 ⟶ 32:
Le moderne ''shell'' testuali posseggono diverse funzionalità ergonomiche, tra le quali:
* la cronologia dei comandi eseguiti (o ''command history''), che permette di ripetere gli ultimi comandi digitati;
* il completamento dei comandi (o ''
* il ''job control'', che permette di [[esecuzione in background|avviare in
Le ''shell'' testuali dei sistemi [[Unix]] integrano un [[linguaggio di scripting]] con il quale è possibile scrivere veri e propri programmi che possono ad esempio automatizzare le operazioni di amministrazione di sistema, semplificandola. La [[sintassi]] di tale linguaggio è un'estensione di quella usata interattivamente, per cui chi è familiare con l'uso interattivo della ''shell'' trova facile e naturale creare degli script.
Alcune delle funzionalità delle ''shell'' dei sistemi Unix sono state riprese in varia misura anche dalle ''shell'' testuali per i sistemi [[Microsoft Windows]], tuttavia esistono prodotti che offrono un ambiente Unix-like (e le relative ''shell'') per tali sistemi, come ad esempio quello del progetto [[Cygwin]], o anche Microsoft Windows Services for UNIX<ref>{{en}}[
Il comando per cambiare la shell di [[login]] di un utente è ''[[chsh]]''.
=== Shell grafiche ===
{{vedi anche|Ambiente desktop}}
L'evoluzione grafica delle shell è rappresentata dalle cosiddette [[Interfaccia grafica|GUI]] (''Graphic User Interface'', interfacce grafiche utente), che hanno una rappresentazione dei dati pensata per essere molto più vicina al modo di percepire il mondo da parte degli esseri umani e quindi più [[user-friendly]].▼
[[File:Interfaccia_Windows_7_Basic.png|thumb|[[File Explorer]] di [[Microsoft Windows]]]]
[[File:Finder_macOS_Sierra.png|thumb|[[Finder]] di [[MacOS]]]]
▲L'evoluzione grafica delle shell è rappresentata dalle cosiddette [[Interfaccia grafica|
Con le GUI il computer e il suo contenuto non sono più rappresentati da linee di testo, ma da icone e finestre che permettono di fare operazioni complesse con un clic del [[mouse]]. In molti sistemi le operazioni attivate dai click su icone e pulsanti mappano le rispettive istruzioni delle interfacce testuali che rappresentano dunque l'interfaccia diretta con il kernel del sistema operativo o il ''core'' delle applicazioni.
Line 45 ⟶ 59:
== Shell più diffuse ==
=== Shell testuali ===
[[File:Cmd_(windows).png|thumb|[[cmd.exe]] di [[Windows NT]]]]
* [[Bash]] (shell tipica dei sistemi [[GNU/Linux]])
* [[Bourne shell]] (shell dei primi sistemi [[Unix]])
* [[C shell]] (shell un tempo popolare su sistemi
* [[zsh|Z shell]] (conosciuta come zsh)
* [[Korn shell]] (shell comunemente disponibile su sistemi
* [[Debian Almquist shell]] (shell usata in [[Debian]] e derivati per eseguire gli script di sistema)
* [[cmd.exe]] (shell dei sistemi operativi della famiglia [[Windows NT]])
Line 57 ⟶ 71:
=== Shell grafiche ===
[[File:CDE_2012_on_Linux.png|thumb|[[Common Desktop Environment]] di [[Unix]]]]
* [[GNOME]] (tipica dei sistemi [[GNU/Linux]] e [[Oracle Solaris|Solaris 10]])
* [[KDE]] (tipica dei sistemi [[GNU/Linux]])
Line 64 ⟶ 79:
* [[File Explorer]] (la shell dei sistemi [[Microsoft Windows]])
* [[GreenGnome]] (shell replacement per sistemi [[Microsoft Windows]])
* [[Unity (software)|Unity]] (precedente shell ufficiale di [[Ubuntu]])
== Note ==
Line 73 ⟶ 88:
* [[Interfaccia utente]]
* [[One-liner]]
* [[
* [[Shell Unix]]
* [[Script]]
* [[Sistema operativo]]
* [[PowerShell]]
== Altri progetti ==
{{interprogetto|preposizione=sulla}}
== Collegamenti esterni ==
* {{Collegamenti esterni}}
* {{FOLDOC||shell}}
{{Portale|Informatica}}
|