Ricerca nel sito web

Le 5 shell open source più utilizzate per Linux


La shell è l'interprete dei comandi in un sistema operativo come Unix o GNU/Linux, è un programma che esegue altri programmi. Fornisce all'utente del computer un'interfaccia al sistema Unix/GNU Linux in modo che l'utente possa eseguire diversi comandi o utilità/strumenti con alcuni dati di input.

Quando la shell ha finito di eseguire un programma, invia un output all'utente sullo schermo, che è il dispositivo di output standard. Per questo motivo viene chiamato “interprete dei comandi”.

La shell è molto più di un semplice interprete di comandi, è anche un linguaggio di programmazione a sé stante con costrutti di linguaggio di programmazione completi come esecuzione condizionale, cicli, variabili, funzioni e molto altro.

Ecco perché la shell Unix/GNU Linux è più potente rispetto alla shell Windows.

In questo articolo, daremo uno sguardo ad alcune delle shell open source più utilizzate su Unix/GNU Linux.

1. Bash Shell

La Bash Shell, o semplicemente “Bash”, sta per “Bourne Again SHell”. È un miglioramento dell'originale Bourne Shell (sh) ed è stato introdotto nel 1989 da Brian Fox.

Nel corso degli anni, Bash è diventato uno degli interpreti della riga di comando più popolari e ampiamente utilizzati su molte distribuzioni Linux e macOS (fino a Catalina, dopo di che è stato sostituito da zsh).

Bash offre agli utenti la possibilità di eseguire comandi, navigare nel file system ed eseguire script. Gli utenti possono sfruttare funzionalità come la cronologia dei comandi, il completamento delle schede e le funzionalità di scripting per automatizzare le attività e semplificare i flussi di lavoro.

Bash Shell ha svolto un ruolo fondamentale nell'evoluzione dell'informatica open source, offrendo agli utenti un'interfaccia coerente per interagire con i loro sistemi.

2. Conchiglia Tcsh/Csh

Il Tcsh (pronunciato “tee-shell“) e il Csh (pronunciato “see-shell“) sono Unix shell a riga di comando basate su Internet che esistono da decenni. Csh, o la shell C, è stata sviluppata da Bill Joy alla fine degli anni '70 presso l'Università della California, Berkeley.

Ha introdotto diverse funzionalità e sintassi di scripting ispirate al linguaggio di programmazione C, che lo ha reso popolare tra i programmatori che hanno familiarità con C.

Tcsh è una versione migliorata dell'originale Csh, che sta per "Tenex C Shell", con "Tenex " essendo un riferimento al sistema operativo TENEX.

Tcsh incorpora tutte le funzionalità di Csh insieme a ulteriori miglioramenti, come la modifica della riga di comando, il controllo dei lavori e il completamento dei comandi.

Entrambe le shell sono state influenti nel mondo Unix, con molti utenti che ne hanno apprezzato la sintassi e le funzionalità di scripting uniche. Tuttavia, nel corso del tempo, altre shell come bash hanno guadagnato più popolarità grazie alle loro funzionalità estese e all'adozione diffusa.

Tuttavia, Tcsh e Csh rimangono parte integrante della storia della shell di Unix.

3. Conchiglia Ksh

La KornShell, comunemente nota come ksh, è una shell Unix sviluppata da David G. Korn presso gli AT&T Bell Laboratories all'inizio degli anni '80.

Combina funzionalità della C shell (csh) e della Bourne shell (sh), con l'obiettivo di fornire il meglio di entrambi i mondi. Nel corso degli anni, ksh è stato elogiato per le sue capacità di scripting avanzate, rendendolo uno dei preferiti da molti amministratori di sistema e utenti esperti.

Una delle caratteristiche più straordinarie di ksh sono i suoi array associativi, una caratteristica che non era comune nelle shell del suo tempo. Ha inoltre introdotto il costrutto select, che rende semplice la generazione di menu negli script.

Un altro vantaggio significativo sono le sue funzionalità di modifica della riga di comando e di cronologia, che furono successivamente adottate da altre shell come bash.

4. Conchiglia Zsh

La shell Zsh, spesso chiamata semplicemente “Zsh”, è una potente shell Unix che ha guadagnato notevole popolarità tra i programmatori e gli amministratori di sistema.

Nata come estensione della Bourne Shell, Zsh incorpora funzionalità di altre shell come Bash, ksh e tcsh, che offre un ricco set di funzionalità e un utilizzo interattivo migliorato.

Una delle caratteristiche più straordinarie di Zsh sono le sue robuste capacità di completamento automatico. A differenza di altre shell, il completamento automatico di Zsh è sensibile al contesto, suggerendo comandi pertinenti, percorsi di file e persino rami Git, rendendo l'esperienza dell'utente più fluida e intuitiva.

Inoltre, Zsh è altamente personalizzabile utilizzando il framework Oh My Zsh, gli utenti possono facilmente applicare temi e plugin, migliorando sia gli aspetti estetici che funzionali del loro ambiente terminale.

5. Pesce

Fish Shell è una shell a riga di comando moderna e facile da usare che mira a fornire un'interfaccia interattiva e intuitiva per gli utenti.

A differenza delle shell tradizionali come Bash o Zsh, Fish offre suggerimenti intelligenti pronti all'uso, rendendo più semplice sia per i principianti che per gli utenti esperti la navigazione e eseguire comandi.

Una delle caratteristiche più straordinarie di Fish sono i suggerimenti automatici, che forniscono feedback in tempo reale in base alla cronologia dei comandi, consentendo un'esecuzione più rapida dei comandi.

Fish vanta anche un'interfaccia vivace e colorata, con l'evidenziazione della sintassi che semplifica la lettura e la comprensione dei comandi. La sua configurazione basata sul web consente agli utenti di personalizzare la propria esperienza con la shell senza addentrarsi in file di configurazione complessi.

Inoltre, Fish dispone di una vasta e crescente raccolta di plugin e temi forniti dalla community, che ne migliorano la funzionalità e l'aspetto.

Riepilogo

Queste non sono le uniche shell disponibili in Unix/GNU Linux, ma sono tra quelle più comunemente utilizzate, a parte quelle preinstallate con varie distribuzioni Linux.

Spero che troverai utile questo articolo. Per qualsiasi informazione aggiuntiva, non esitate a pubblicare un commento.