Annuncio pubblicitario

Felice di usare la shell bash in Linux? O preferisci provare un'alternativa? C'è tsch, pesce, KornShell e Z Shell tra cui scegliere. Ma quale di queste shell Linux è la migliore?

Che cos'è una shell?

Di solito, quando scrivi un'applicazione, viene eseguita in un linguaggio di alto livello comprensibile agli umani. Esempi di questi sono C #, Java, C ++, ecc. Che ci crediate o no, il computer vede tutto come 1s come 0s o, come comunemente noto, codice binario o macchina Che cos'è il binario? [Spiegazione della tecnologia]Dato che il binario è così assolutamente fondamentale per l'esistenza dei computer, sembra strano che non abbiamo mai affrontato l'argomento prima, quindi oggi ho pensato di dare una breve panoramica di ciò che il binario ... Leggi di più .

Un compilatore tradurrà quindi la lingua di alto livello in un file binario come un eseguibile. Questo file binario è ciò che esegui per avviare detta applicazione. Ora, questa è una visione di altissimo livello di ciò che accade, ma ricorda, il tuo computer ha bisogno di un livello di traduzione tra ciò che gli stai dicendo di fare e come può capirlo.

instagram viewer

Una shell è ciò che è noto come un interprete. Analogamente a un compilatore, un interprete traduce il codice umano in codice macchina. Una delle differenze è che un interprete fa questa una istruzione alla volta invece di un compilatore che scansiona l'intero programma e lo traduce nel suo intero codice macchina.

La shell, quindi, è un'interfaccia per interagire con il tuo sistema operativo (OS). Mentre digiti i comandi nella tua shell, la shell è responsabile dell'interpretazione di quei comandi e della realizzazione della magia. Operazioni come la copia di file, il piping, la lista dei file rientrano nella sfera di competenza di una shell. È anche responsabile di ricordare la cronologia dei tuoi comandi per controllare cosa ti è passato per la testa in un momento di possibile ebbrezza.

Per scoprire tutte le shell disponibili sul tuo sistema, apri il terminale e digita:

cat / etc / shells

Per scoprire quale shell stai attualmente usando digita:

echo $ 0
le migliori shell linux scoprono quale shell sta usando

1. bash

A un miglio, la shell più popolare tra gli utenti Linux. È difficile persino pensare alle conchiglie senza che Bourne-Again SHell (bash) faccia parte dell'equazione. Molte distribuzioni Linux vengono fornite con bash come shell predefinita poiché bash è la shell GNU predefinita. Rilasciato nel 1989, vanta anche alcuni decenni di sano sviluppo.

Il predecessore di Bash è The Bourne Shell (sh), che è una delle shell Unix originali. Una caratteristica interessante per i programmatori sh era che potevano porta i loro script sh Che cos'è Shell Scripting e perché dovresti usarloOltre ad essere in grado di accettare ed eseguire i comandi in modo interattivo, la shell può anche eseguire i comandi memorizzati in un file. Questo è noto come shell scripting. Qui trattiamo le basi dello scripting della shell. Leggi di più direttamente a bash completamente invariato. Bash offre anche numerosi miglioramenti al suo predecessore come il completamento dei comandi e la cronologia dei comandi.

Bash è una shell perfettamente rispettabile, e spesso la documentazione online presupporrà sempre che tu lo stia usando. Tuttavia, bash non è privo di difetti - come può testimoniare chiunque abbia mai scritto uno script bash che si estende su poche righe! Non è che non puoi fare qualcosa, è che non è sempre particolarmente elegante leggere e scrivere. Bash è probabilmente qui per rimanere almeno per il prossimo futuro. Vanta una vasta base di installazione e brigate di utenti casuali e professionali, che sono già abituati al suo utilizzo e stranezze.

2. KornShell

Comunemente noto come ksh, KornShell è una shell alternativa nata da Bell Labs negli anni '80. Ksh ha iniziato la sua vita come software proprietario, essendo il di fatto standard per gli uffici commerciali e quindi non era disponibile per Linux fino al 2000. Non ci sono molte differenze tra bash e ksh, ma ognuna presenta vantaggi minori rispetto all'altra. Ksh, per esempio, ha il cd vecchio nuovo comando. Se tu fossi nella directory /Downloads/foo/bar/uno/foobar e dovevi arrivarci /Downloads/foo/bar/Due/foobar devi solo eseguire:

cd uno due

migliori shell Linux shell korn
I veterani di Ksh sosterranno la sua superiorità menzionandone i vantaggi in termini di script. Questi includono l'inclusione di una migliore sintassi del ciclo, modi più naturali per ripetere i comandi e gli array associativi a malapena utilizzati. Per input di base bash è abbastanza simile a ksh per gli script avanzati, tuttavia, questa sarà sicuramente un'esperienza diversa. Un'altra cosa da tenere presente è la richiesta di aiuto per ksh online. Ciò può comportare il risveglio di un utente avanzato brizzolato dal suo sonno per aiutarti. Rispetto a bash, che ti darà una raffica di risposte quasi immediatamente!

Se vuoi provare ksh puoi digitare:

sudo apt installa ksh. ksh

3. tcsh

Tcsh può risalire alle sue origini ai primi tempi di Unix. È essenzialmente la shell C (csh) con completamento programmabile della riga di comando, modifica della riga di comando e alcune altre funzionalità. Tcsh è la shell predefinita per sistemi basati su BSD come FreeBSD. Il grande punto di forza di tcsh è il suo linguaggio di scripting, che dovrebbe apparire molto familiare a chiunque abbia programmato in C. Tcsh è un degno candidato per l'apprendimento se ti trovi principalmente programmazione in C Perché vale ancora la pena imparare la programmazione C.C non è una lingua morta. In effetti, la rivista IEEE Spectrum l'ha classificata come la migliore lingua n. 2 nel 2017. Ecco cinque motivi per cui. Leggi di più . Ciò rende tcsh utile per la prototipazione di piccoli programmi C senza confondersi su cose come le parentesi che si stanno utilizzando. Questo problema tende a verificarsi se si passa continuamente dalla programmazione C alla shell scripting.

Lo scripting di Tcsh è adorato da alcuni e detestato da altri. Ma ha anche altre funzionalità, tra cui l'aggiunta di argomenti agli alias e varie impostazioni predefinite che potrebbero attirare le tue preferenze. Una delle sue caratteristiche significative include il modo in cui il completamento automatico è e storia lavori di completamento. Dopo aver recuperato la cronologia digitando storia. Tcsh visualizzerà un elenco numerato dei comandi precedenti, con un timestamp molto conveniente. È possibile eseguire qualsiasi comando digitando ! n sostituendo n con il suo numero corrispondente nella cronologia visualizzata. Il completamento della scheda Cronologia in tcsh funziona digitando:

!un

Questo si espande all'ultimo comando che è iniziato con la lettera "a". Comparativamente, in bash, dovresti digitare ! a: p per vedere prima il comando, seguito da !! per eseguirlo.

Per provare tcsh, digitare:

sudo apt installa tcsh. tcsh

4. Pesce

Tra tutta la serietà di Linux, il team di Fish ha incorporato un senso dell'umorismo nel suo progetto. Sul loro sito web, il titolo ironico recita "Finalmente, una shell di riga di comando per gli anni '90" - fish ("friendly ionteractive shell ”) è stato sviluppato nel 2005. Oltre al propagandato "Glorious VGA Color", ci sono alcuni miglioramenti rispetto ad altre shell. I comandi che hanno una sintassi non valida verranno visualizzati in rosso e la sintassi corretta in blu. Inoltre, ci sono serie sontuose di completamenti di schede come suggerimenti di completamento automatico con codice colore basati sulla cronologia.

migliori pesci conchiglie linux
migliori auto shell linux

Fish vanta anche il completamento del comando basato sul pagine man sulla tua macchina Come abbreviare le pagine man in spiegazioni leggibili su Linux e macOSMacOS e Linux hanno ciascuno un utile comando "man" che mostra spiegazioni manuali per i comandi del terminale. Dato che sono spesso lunghi, perché non usare lo strumento tldr per accorciarli in blocchi leggibili? Leggi di più . Quindi, se hai appena installato un nuovo programma e devi abituarti alla sua sintassi, fish prenderà la sintassi dalla pagina man e la aggiungerà ai tuoi suggerimenti di completamento automatico.! Neat Se desideri familiarizzare con la riga di comando, il pesce può essere un ottimo punto di partenza.

Per provare di cosa tratta il pesce, digita:

sudo apt installa fish. pesce

5. Z Shell

Molti considererebbero questo come lasciare la shell migliore per ultimo, il che sarebbe completamente comprensibile. Zsh ha somiglianze con bash e ksh e incorpora molte delle funzionalità che si trovano in esse e anche tcsh. Alcune utili funzioni di zsh includono un elenco di completamento automatico navigabile. A differenza di bash che elenca semplicemente tutti i comandi disponibili e ti fa digitare manualmente. Globbing in zsh è inspiegabilmente utile. Digitando:

vim / u / l / b / a

Apre automaticamente il file:

/usr/local/bin/autoupdate.sh

La correzione ortografica in zsh è di gran lunga superiore a quella di bash. In un CD il comando bash può correggere fino a un carattere. Zsh, d'altra parte, può essere configurato per correggere automaticamente 10 errori di ortografia in una parola. Zsh inchioda anche le storie della riga di comando. Ciò è estremamente utile per gli utenti che trascorrono troppo tempo sul terminale. Zsh condivide magicamente le storie tra terminali, rendendo le sessioni multi-terminale un gioco da ragazzi.

Zsh può richiedere del tempo per essere configurato al primo utilizzo se non si utilizza la configurazione predefinita. Per provarlo, inserisci:

sudo apt installa zsh. zsh

Quale Shell è per me?

Il fatto che queste opzioni siano disponibili è geniale. Si intravede nella storia dell'informatica stessa, dove i programmatori hanno deciso di voler fare le cose a modo loro e, infine, di renderle libere per il mondo.

Le differenze sostanziali tra queste shell si possono trovare nella sintassi degli script. Ogni shell ha una particolare serie di sfumature che li separano l'uno dall'altro. Allo stato attuale, bash domina in termini di quota di mercato, il che rende molto più semplice trovare aiuto. Bash è semplicemente il miglior tuttofare, in grado di soddisfare le esigenze di tutti tranne gli utenti più avanzati.

Quale shell usi attualmente? Hai provato qualche shell diversa da bash? Cosa ami o odi del tuo guscio attuale? Condividi i tuoi pensieri nei commenti qui sotto!

Credito di immagine: spaxiax /Depositphotos

Yusuf vuole vivere in un mondo pieno di aziende innovative, smartphone che vengono forniti in bundle con caffè torrefatto scuro e computer con campi di forza idrofobici che respingono ulteriormente la polvere. Come analista aziendale e laureato alla Durban University of Technology, con oltre 10 anni di esperienza in un settore tecnologico in rapida crescita, gli piace essere il medio tra...