GNU/Linux >> Linux Esercitazione >  >> Linux

Raccolta delle shell Linux:le 15 shell Linux open source più popolari

I sistemi Unix hanno affascinato il mondo sin dal suo inizio negli anni '70. Una delle caratteristiche fondamentali che ha aiutato le distribuzioni Linux e BSD a garantire la loro statura attuale è la shell Linux. La shell è uno degli strumenti essenziali per molti appassionati di Linux grazie alla sua immensa potenza e alle diverse applicazioni. È un'interfaccia a riga di comando per il tuo sistema operativo, che ti consente di eseguire qualsiasi tipo di operazione a seconda dei tuoi criteri. Inoltre, le shell Linux non sono solo un'interfaccia, ma anche un vero e proprio linguaggio di scripting con un proprio insieme di sintassi e semantica.

Shell Linux usati di frequente

Linux offre alcune delle migliori shell open source per utenti esperti che sono sempre alla ricerca di aggiungere nuovi toolkit al proprio arsenale. Il che, a sua volta, rende la scelta di una particolare shell piuttosto difficile per molti utenti di tutti i giorni. I nostri editori si sono presi la libertà di indicare alcune delle migliori e gratuite shell open source per gli utenti Linux. Resta con noi per scoprire quale shell Linux è più adatta al tuo scopo.

1. sh Shell

La Bourne Shell o "sh" era la shell originale dello storico sistema operativo Unix. Il suo creatore, Stephen Bourne, lo sviluppò negli AT&T Bell Labs nel 1977 e da allora è stato distribuito con la maggior parte dei precedenti sistemi Unix. Bourne Shell ha ottenuto la sua forma abbreviata dall'estensione di scripting che utilizza, che, ovviamente, richiede agli utenti di terminare i nomi degli script con sh. Ha impostato la barra per molte shell future popolari con funzionalità come reindirizzamento, capacità di scripting e robusti costrutti linguistici.

Caratteristiche della Bourne Shell

  • Il prompt della shell predefinito di Bourne Shell è il simbolo $, ed è stata la prima shell a utilizzare questo carattere per il prompt.
  • Ha il supporto integrato per il reindirizzamento input-output, Unicode, il reindirizzamento del flusso, lo scripting batch e molti altri.
  • Sebbene la versione originale del 1977 di questa shell fosse proprietaria, è stata resa pubblicamente disponibile con accesso alla fonte.
  • La shell sh è altamente configurabile e può essere modificata per adattarsi facilmente a diversi criteri di sistema.

2. Bash Shell

Conosciuta ampiamente come Bourne Again Shell, Bash è probabilmente la shell Linux più utilizzata nelle macchine Unix contemporanee. Se utilizzi una distribuzione Linux standard come Ubuntu o Arch, la shell predefinita che stai utilizzando è la shell Bash. Questa shell Linux open source è ben nota nella comunità per il suo solido set di funzionalità e usabilità. La maggior parte degli utenti Linux, quindi, esegue Bash prima o poi nella vita.

Caratteristiche di Bash Shell

  • Le funzionalità di modifica della riga di comando fornite da Bash sono semplicemente eccezionali e offrono una cronologia dei comandi illimitata.
  • Bash fornisce solide funzioni di shell, alias, meccanismi di controllo dei lavori, reindirizzamento input-output, supporto ISO 8061 insieme al supporto Unicode.
  • Questa shell Linux open source fornisce supporto per il completamento automatico di nomi di comandi, percorsi, caratteri jolly e consente elenchi di directory colorati insieme all'evidenziazione del testo.
  • Bash può eseguire aritmetica di interi di qualsiasi base da due a sessantaquattro e consente array indicizzati con dimensioni illimitate.

3. C Shell

La shell C o "csh" è una delle più vecchie shell Unix open source. È stato sviluppato negli anni '70 da Bill Joy, uno studente allora laureato all'UCB. Da allora csh è stato distribuito con numerose variazioni Unix, in particolare i vari BSD. Incorpora una sintassi simile al C per l'interprete che è utile a molti poiché il sistema Unix originale e i moderni kernel Linux sono in gran parte scritti in C/C++.

- -

Caratteristiche della C Shell

  • C shell offre un innovativo meccanismo di cronologia, procedure di controllo del lavoro, nome file interattivo e completamento del nome utente insieme a sintassi C-like standard.
  • Consente agli utenti avanzati di utilizzarlo come shell di accesso interattiva o come processore di comandi per script di shell.
  • Il prompt della shell predefinito utilizzato dalla shell C di Linux è il simbolo '%', contrariamente al familiare segno '$' a molti utenti Bash.
  • C shell consente agli utenti di cercare e sostituire sostituzioni variabili insieme a modelli di corrispondenza basati su caratteri jolly.

4. Conchiglia Korn

La Korn Shell o ksh è probabilmente una delle shell open source più popolari per Linux oggi. È stato sviluppato nei leggendari Bell Labs da David Korn che ha preso ispirazione dall'interattività della shell C e dalla produttività della shell Bash. La Korn Shell ha guadagnato un'immensa popolarità sin dai suoi primi giorni, grazie alle sue funzionalità all'avanguardia che includono il controllo avanzato dei lavori, l'aliasing dei comandi, l'aritmetica in virgola mobile insieme a molti altri.

Caratteristiche della conchiglia Korn

  • Korn Shell consente agli utenti di terminare i lavori in corso usando Ctrl + Z e metterli in primo piano o in background usando i comandi fg e bg .
  • Può essere utilizzato per memorizzare il codice della shell direttamente in memoria che consente di aumentare la capacità di programmazione e le prestazioni efficienti.
  • Ksh offre funzioni avanzate di modifica della riga di comando in cui gli utenti possono utilizzare comandi di modifica in stile vi o Emacs direttamente dalla loro shell.
  • Gli script Korn Shell sono generalmente più veloci degli script Bourne shell e offrono funzionalità di I/O avanzate insieme a notevoli meccanismi di sicurezza.

5. Zsh Shell

ZSH Shell è una shell Linux innovativa e moderna con una pletora di solide funzionalità. È sviluppato su Bash e offre una shell di accesso interattiva insieme all'efficace interprete dei comandi. Zsh è noto per le sue prestazioni, che migliorano di gran lunga molte shell open source per Linux. Prende in prestito anche elementi da altre conchiglie popolari degli anni '90, comprese le conchiglie Ksh e Tcsh. Prova Zsh se sei un guru di Linux alla ricerca di shell Linux avanzate.

Caratteristiche di Zsh Shell

  • La funzionalità di completamento automatico di Zsh è molto intelligente e supporta il completamento automatico altamente interattivo sia per i file che per i percorsi.
  • Il meccanismo di condivisione della cronologia di questa shell Unix open source è semplicemente immenso, consentendo la cronologia condivisa di molte diverse istanze di terminale in esecuzione contemporaneamente.
  • Gli utenti possono scegliere tra oltre 400 plugin e oltre 200 temi dal suo popolare framework guidato dalla community oh-my-zsh.
  • Zsh supporta anche la modalità vi, l'escape intelligente, il globbing ricorsivo, il piping di output su file temporanei, la correzione ortografica e molte altre funzioni interattive.

6. Tcsh Shell

La shell Tcsh è una versione aggiornata della shell C che offre il completamento dei comandi programmabili e la modifica della riga di comando come caratteristiche principali. È completamente compatibile con la shell Csh e può essere utilizzata sia come shell di accesso interattiva che come processore di script di shell. Tcsh viene fornito con un potente editor della riga di comando, un moderno meccanismo di cronologia, completamento delle parole programmabile, controllo del lavoro, supporto per il controllo ortografico e una sintassi simile a C seguita da Csh. Questa shell Unix è più adatta per i programmatori avanzati.

Caratteristiche di Tcsh Shell

  • Tcsh è dotato di supporto integrato per il completamento automatico di file e variabili, nonché di completamento programmabile e selettori di argomenti alias.
  • Consente agli utenti esperti di incorporare caratteri jolly per una maggiore flessibilità durante l'esecuzione di script di shell sul terminale.
  • Il comando where pre-costruito di questa shell Linux funziona come il comando which in Bash ma mostra ogni posizione del target specificato nella directory $PATH.
  • Tcsh è l'interprete della riga di comando predefinito per FreeBSD e i suoi discendenti come DragonFly BSD e DesktopBSD.

7. Conchiglia di pesce

Fish Shell è una shell Unix amichevole e interattiva che mira a essere un sostituto moderno delle prime shell open source per Linux. È disponibile su tutte le distribuzioni Linux e BSD insieme al sistema operativo Windows. Fish offre un ricco set di potenti funzionalità che semplificano la scoperta, la memorizzazione e l'utilizzo di eccitanti comandi Linux sulla tua macchina. Se stai cercando una shell da riga di comando intelligente per il tuo desktop Linux, vale sicuramente la pena provare Fish.

Caratteristiche del guscio di pesce

  • Fish offre una potente funzione di suggerimento automatico nota come "cerca durante la digitazione" in base alla cronologia della riga di comando e alla directory corrente.
  • La sua funzionalità di completamento Tav ricca di funzionalità consente agli utenti di espandere percorsi di file, variabili e molti completamenti specifici di comandi con caratteri jolly e parentesi graffe.
  • Fish viene fornito con il supporto integrato per il true color a 24 bit, rendendo le sessioni del terminale molto più colorate e accattivanti.
  • È una shell eccellente per le persone che cercano shell open source che funzionino immediatamente e non richiedano alcuna configurazione.

8. Guscio ionico

Il guscio Ion è un affascinante guscio moderno che presenta una sintassi semplice ma potente insieme a un significativo aumento delle prestazioni. È scritto utilizzando il linguaggio di programmazione Rust, che lo rende molto meno vulnerabile ai comuni problemi "ShellShcok" incontrati da molti utenti Bash. Ion prende in prestito molti elementi di design da conchiglie popolari come Bash, Fish e Oil. Quindi non dovrebbe volerci molto tempo per iniziare a utilizzare questa fantastica shell.

Caratteristiche del guscio ionico

  • Ion shell è più veloce di Dash, che a sua volta è circa quattro volte più veloce della shell Bash standard utilizzata oggi dalla maggior parte delle macchine Linux.
  • Grazie alla scrittura in Rust, Ion offre un elevato grado di sicurezza della memoria rispetto alle tradizionali shell a riga di comando Unix basate su C/C++.
  • Ion ha un supporto di espansione integrato per stringhe, array, glob, parentesi graffe (intervalli, permutazioni, parentesi graffe nidificate), aritmetica e processi.
  • Il suo design semplice, pulito e conciso lo rende relativamente facile abituarsi e consente agli utenti di compilare la shell come binario statico.

9. Dash Shell

La shell Dash è l'acronimo di Debian Almquist shell (dash) ed è l'interprete della riga di comando predefinito per i sistemi operativi Debian. È molto più piccolo della shell standard di GNU Bash, ma punta ancora alla conformità POSIX. Dash discende dalla versione NetBSD di ash (l'Almquist SHell) prima di essere portato nell'ecosistema Linux e offre un significativo aumento delle prestazioni rispetto alle tradizionali shell Unix. Dash è più veloce della maggior parte delle shell e richiede meno spazio e meno librerie.

Caratteristiche di Dash Shell

  • Dash è una delle shell open source più veloci per Linux, con un clock quasi quattro volte più veloce di Bash e di altre shell standard.
  • Il design minimalista di Dash lo rende molto più piccolo degli interpreti da riga di comando di tutti i giorni e richiede risorse di sistema limitate (spazio su disco, RAM o CPU).
  • Grazie alla sua base di codice notevolmente più piccola, Dash ha una superficie di attacco inferiore ed è molto sicuro dai frequenti attacchi di shell.
  • Gli utenti dei sistemi Ubuntu o Debian possono trovare maggiori informazioni su Dash digitando man dash nella loro finestra del terminale.

10. Eshell

Eshell è un comodo programma di interpretazione della riga di comando scritto utilizzando Emacs Lisp e mira ad essere estremamente portatile oltre a fornire un supporto continuo per i codici Lisp. Offre un elenco piuttosto consistente di funzionalità quotidiane tra cui il completamento automatico, la gestione della cronologia, il meccanismo di controllo dei lavori e molti altri. I costrutti di scripting forniti con Eshell sono piuttosto semplici e fanno il lavoro correttamente. Se sei un programmatore Lisp o un appassionato di Emacs all'avanguardia, Eshell può diventare la shell Linux perfetta per te.

Caratteristiche di Eshell

  • Eshell non è un emulatore di terminale autonomo, ma una shell quotidiana che comunica con la tua macchina utilizzando le funzionalità di Emacs.
  • Al momento, non supporta direttamente i programmi interattivi, quindi è necessario richiamarli in un'istanza del termine ANSI separata.
  • Il supporto predefinito di Eshell per la modifica della cronologia e l'interazione è abbastanza buono e la sintassi è in qualche modo simile a Bash e Zsh.
  • Gli utenti possono personalizzare Eshell modificando la funzione-prompt-eshell variabile, che definisce come dovrebbe comportarsi il prompt nel sistema.

11. rc Shell

La shell rc è un classico interprete della riga di comando che ha una stretta somiglianza con la shell Bourne. Tuttavia, ha una struttura alquanto semplice rispetto alla shell Bourne. Questo perché rc usa una struttura di controllo simile a C piuttosto che la sintassi simile ad ALGOL usata da sh. Tom Duff, il principale sviluppatore di questa shell Unix, è noto per la sua programmazione di qualità e le eccezionali capacità di risoluzione dei problemi.

Caratteristiche di rc Shell

  • rc usa i costrutti if not di scripting invece di vanilla else e fornisce lo stesso ciclo for che usi nella shell Bourne.
  • Sebbene rc abbia una disciplina di tipizzazione debole, incorpora un potente meccanismo per manipolare le variabili.
  • rc è ragionevolmente leggero, il che lo rende più veloce di molte shell open source tradizionali per Linux.
  • È dotato di un eccellente supporto per la gestione delle eccezioni, il meccanismo di ricerca e sostituzione, la corrispondenza dei modelli e molti altri.

12. Scsh Shell

Scheme Shell o Scsh è una shell della riga di comando portatile disponibile per un'ampia varietà di sistemi operativi oltre a Linux e BSD. È stratificato con l'interfaccia di programmazione Scheme ed è progettato per scrivere a proprio agio programmi Unix del mondo reale. Può essere utilizzato per scrivere script efficienti per applicazioni e programmi del sistema operativo standard. Viene fornito con supporto integrato per pipeline, reindirizzamento input-output, collegamenti simbolici, socket BSD, pattern di espressioni regolari insieme a molte altre interessanti funzionalità.

Caratteristiche di Scsh Shell

  • La shell Scheme offre un eccellente supporto della libreria per i costrutti di scripting quotidiani come elenchi, caratteri e stringhe.
  • Gli utenti possono scegliere di utilizzare le espressioni regolari Scheme, un linguaggio specifico del dominio (DSL) o piccoli linguaggi durante la manipolazione delle espressioni regolari.
  • Il supporto di rete fornito da questa shell open source è davvero di prim'ordine e più veloce rispetto a molti altri.
  • Le sue astrazioni di qualità supportano pseudo terminali, awk come script, macro, ricerca intelligente e capacità di sostituzione tra molte altre.

13. Xonsh Shell

Xonsh è una moderna shell Linux basata sul linguaggio di scripting Python. Se ti sei mai chiesto se potresti usare l'interprete Python come shell Unix, Xonsh ti consente di fare esattamente questo. Il linguaggio è stato creato come un superset di Python 3.5+ e fornisce numerose primitive di shell che usi regolarmente in Bash e iPython. Inoltre, il loro sito Web è davvero fantastico e consente ai nuovi utenti di provare Xonsh live dal proprio browser.

Caratteristiche di Xonsh Shell

  • Xonsh è stato sviluppato come un linguaggio sano con supporto nativo per una vasta gamma di sistemi operativi tra cui Linux, Mac OSX e Windows.
  • La funzione di completamento delle schede di questa shell è semplicemente eccezionale e supporta anche i completamenti dall'analisi della pagina man.
  • Gli utenti che hanno familiarità con Python troveranno Xonsh molto adatto in quanto la sintassi ricorda molto da vicino quella di Python.
  • Viene fornito con una libreria piuttosto vasta che offre molte primitive di tutti i giorni immediatamente disponibili.

14. Oh Conchiglia

Oh è una fantastica shell open source per gli utenti Linux moderni. Sebbene a prima vista sembrerà abbastanza simile alle tradizionali shell Unix, diverge da esse quando si tratta di programmazione. Essendo sviluppato utilizzando Golang, Oh offre un supporto per la concorrenza nativa di alta qualità. Tuttavia, il nucleo di Oh è un'istanza estremamente modificata del linguaggio di programmazione Scheme. Utilizza anche la stessa sintassi per codice, dati, pipe e canali, consentendo all'utente finale di utilizzarli in modo intercambiabile nei propri script.

Caratteristiche di Oh Shell

  • La shell stessa è costruita usando Go, ma i costrutti di programmazione sono un dialetto del linguaggio di programmazione Scheme.
  • Oh è una delle migliori shell Unix quando si tratta di supportare la concorrenza.
  • Gestisce i canali insieme alle pipe come valori di prima classe e ha una struttura sintattica concisa.
  • Oh consente membri sia pubblici che privati ​​e li usa come base di un sistema di oggetti basato su prototipi.

15. Conchiglia elfica

La shell elfica è una delle mie shell open source preferite per Linux da quando l'ho provata alcuni mesi fa. È un interprete della riga di comando davvero fantastico che ti consente di fare qualsiasi cosa sulla tua macchina. Dalla manipolazione del sistema stesso alla scrittura di script eloquenti, Elfico può essere utilizzato per eseguire un ampio elenco di compiti. Viene fornito con una ricca libreria di solide funzioni per la manipolazione delle stringhe, la corrispondenza delle espressioni regolari, l'analisi JSON, il networking e molti altri.

Caratteristiche della Conchiglia Elfica

  • Le pipeline elfiche consentono al sistema di trasmettere dati strutturati come elenchi, mappe e persino funzioni insieme a dati di testo standard.
  • Viene fornito con una familiare sintassi simile al C che rende lo scripting in elfico molto intuitivo per gli utenti Linux esperti.
  • Elvish è scritto usando il linguaggio di programmazione Go ed è quindi molto sicuro rispetto ad altre shell Unix.
  • Questa shell Unix viene fornita con un file manager pre-costruito che rende la gestione del sistema molto più comoda.

Pensieri finali

A causa di una pletora di robuste shell open source offerte dall'ecosistema in crescita di Linux, spesso diventa un compito difficile scegliere la shell Linux giusta per te. I nostri redattori hanno quindi esaminato tutte le scelte popolari che puoi trovare e hanno compilato questa pratica guida per te. Poiché le persone hanno una preferenza varia per diversi tipi di conchiglie, la migliore per te dipende interamente da te. Incoraggiamo i nostri lettori a provare alcune di queste shell in base alle loro esigenze e acquisire esperienza di prima mano per se stessi. Lasciaci un commento sui tuoi pensieri sulle nostre scelte.


Linux
  1. La mia storia su Linux:coprire l'open source in spagnolo

  2. I 5 migliori strumenti di memorizzazione nella cache Linux open source consigliati da Geeks

  3. 10 browser Web leggeri e open source per Linux

  4. Scribus:un software di desktop publishing open source

  5. Una breve storia delle distribuzioni Linux/Open Source

Le 6 migliori shell open source per Linux

Comando sorgente in Linux

Shell open source popolari in Linux

Spiegazione del comando sorgente su Linux

8 tipi di shell Linux

Koodo Reader:un lettore di eBook open source per Linux