Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Molte persone usano i termini shell dei comandi, strumento da riga di comando e terminale in modo intercambiabile, che può generare confusione. Questo articolo illustra la differenza tra questi concetti e fornisce esempi di ognuno di essi.
Una shell dei comandi è un'interfaccia della riga di comando interattiva per la gestione di un computer, noto anche come ciclo REPL (Read-Eval-Print Loop).
Una shell accetta input dalla tastiera, valuta l'input ed esegue l'input come comando della shell o inoltra l'input al sistema operativo da eseguire. La maggior parte delle shell può anche leggere i comandi da un file di script e può includere funzionalità di programmazione come variabili, controllo del flusso e funzioni.
Tipi di shell di comando
Esistono due tipi principali di shell dei comandi:
Shell dei comandi per utilizzo generico
Le shell dei comandi per utilizzo generico sono progettate per funzionare con il sistema operativo e consentono di eseguire qualsiasi comando supportato dal sistema operativo. Includono anche comandi specifici della shell e funzionalità di programmazione. L'elenco seguente contiene alcuni esempi di shell dei comandi per utilizzo generico:
- PowerShell
- Shell dei comandi di Windows
- bash - popolare in Linux
- zsh - popolare in macOS
Shell dei comandi di utilità
Le shell dei comandi dell'utilità sono progettate per funzionare con applicazioni o servizi specifici. Queste shell possono eseguire solo comandi specifici per l'applicazione o il servizio. Alcune shell di utilità supportano l'esecuzione di comandi da uno script batch, ma non includono funzionalità di programmazione. In genere, queste shell possono essere usate solo in modo interattivo.
- AI Shell : shell interattiva usata per comunicare con i servizi di intelligenza artificiale, ad esempio Azure OpenAI.
- netsh : la shell di rete (netsh) è un'utilità della riga di comando che consente di configurare e visualizzare lo stato di vari componenti di rete in Windows. È sia uno strumento da riga di comando che una shell di comando. Supporta anche l'esecuzione di comandi da un file di script.
Strumenti da riga di comando
Un strumento a riga di comando è un programma autonomo eseguito da una shell di comandi. Gli strumenti da riga di comando sono in genere progettati per eseguire un'attività specifica, ad esempio la gestione di file, la configurazione delle impostazioni o l'esecuzione di query per informazioni. Gli strumenti da riga di comando possono essere usati in qualsiasi shell che supporta l'esecuzione di programmi esterni.
- Interfaccia della riga di comando di Azure: una raccolta di strumenti da riga di comando per la gestione delle risorse di Azure che possono essere eseguite in qualsiasi shell supportata.
- Azure PowerShell : una raccolta di moduli di PowerShell per la gestione delle risorse di Azure che possono essere eseguite in qualsiasi versione supportata di PowerShell.
- OpenSSH per Windows : include un client della riga di comando e un server che fornisce comunicazioni sicure su una rete.
- Comandi di Windows : una raccolta di strumenti da riga di comando integrati in Windows.
In generale, gli strumenti a riga di comando non forniscono un'interfaccia a shell (REPL). Il netsh comando in Windows è un'eccezione, poiché si tratta sia di uno strumento da riga di comando che di una shell interattiva dei comandi.
Terminali
Un terminale è un'applicazione che fornisce una finestra a base di testo per ospitare shell dei comandi. Alcuni terminali sono progettati per funzionare con una shell specifica, mentre altri possono ospitare più shell. Possono anche includere funzionalità avanzate, ad esempio:
- Possibilità di creare più riquadri all'interno di una singola finestra
- Possibilità di creare più schede o finestre per ospitare più shell
- Possibilità di modificare combinazioni di colori e tipi di carattere
- Supporto per operazioni di copia e incolla
L'elenco seguente contiene alcuni esempi di applicazioni terminal:
- Terminale Windows : un'applicazione terminale moderna per Windows che può ospitare più shell.
- Host della console di Windows : l'applicazione host predefinita in Windows per le applicazioni basate su testo. Può anche ospitare la shell dei comandi di Windows o PowerShell.
- Terminale per macOS : l'applicazione terminale predefinita in macOS che può ospitare la shell bash o zsh.
- iTerm2 per macOS : un'applicazione terminale di terze parti più diffusa per macOS.
- Azure Cloud Shell : un'applicazione terminale basata su browser ospitata in Microsoft Azure. Azure Cloud Shell offre la possibilità di usare bash o PowerShell. Ogni shell è preconfigurata con molti strumenti da riga di comando per la gestione delle risorse di Azure.