La shell Z o ZSH è una shell UNIX interattiva e un potente interprete della riga di comando per i linguaggi di scripting, incluso lo scripting della shell. Zsh è stato sviluppato da "Paul Fastad" dal 1990 e il nome "zsh" deriva dal professore di Yale Zong Shao.
La Z-Shell è diventata una delle shell più popolari per il sistema operativo Linux. È ricco di funzionalità e facile da configurare e personalizzare. Di seguito sono riportate alcune importanti funzioni di zsh:
- Comando di completamento automatico
- Gestione delle variabili migliorata
- Correzione ortografica
- Cronologia comandi condivisa
- Completamento della scheda Kill
- Impostazione semplice delle variabili ambientali
- Personalizzabile
Oh-mio-zsh
Oh-my-zsh è un framework open source per la gestione di ZSH, la shell Z. Esistono anche altri framework per la shell Z, come prezto, Zgen, Antigen, ecc. In questo tutorial, utilizziamo 'oh-my-zsh' per la nostra configurazione zsh.
Oh-my-zsh è un framework basato sulla comunità con molte funzioni. Viene fornito con un design personalizzabile e dispone di un ampio catalogo di plug-in rivolti ad amministratori di sistema e sviluppatori.
In questo tutorial ti mostriamo come installare Z-Shell o zsh su Ubuntu Linux e CentOS. Quindi configuriamo il framework oh-my-zsh per la gestione di ZSH. Ti mostreremo anche come cambiare il tema zsh e attivare i plugin.
Prerequisiti
- Linux - Ubuntu 20.04 o CentOS 8
- Privilegi di root
Cosa faremo
- Installa e configura ZSH
- Installa e configura il framework Oh-my-zsh
- Cambia il tema predefinito
- Abilita i plugin oh-my-zsh
Passaggio 1:installa e configura ZSH
In questo passaggio, installeremo la shell Z dal repository, quindi configureremo un utente per utilizzare la shell Z come tema predefinito. Fondamentalmente, la shell predefinita su Ubuntu e CentOS è bash, quindi configureremo un utente root per utilizzare zsh come shell predefinita. Devi essere loggato come root sul tuo computer per i passaggi successivi. Su CentOS, usa il comando 'su -' per diventare utente root, su Ubuntu usa 'sudo -s' per diventare root.
Per installare zsh dal repository, usa i seguenti comandi.
Su Ubuntu:
apt install zsh
Su CentOS:
dnf install zsh
Al termine dell'installazione, cambia la shell predefinita dell'utente root in zsh con il comando chsh di seguito.
Su Ubuntu:
chsh -s /usr/bin/zsh root
Su CentOS:
chsh -s /bin/zsh root
Ora disconnettiti dall'utente root, accedi di nuovo e otterrai la shell zsh.
Controlla la shell corrente utilizzata con il comando seguente.
echo $SHELL
L'output dovrebbe essere zsh. Ecco il risultato su Ubuntu.
Ed ecco il risultato su CentOS.
La shell Z zsh è stata installata.
Passaggio 2:installa e configura il framework Oh-my-zsh
Quindi la shell Z è ora installata sul sistema. Successivamente, vogliamo installare il framework oh-my-zsh per la gestione della shell Z zsh. Oh-my-zsh fornisce uno script di installazione per l'installazione del framework e dobbiamo installare alcuni altri pacchetti richiesti, inclusi wget per scaricare lo script di installazione e Git per scaricare la shell oh-my-zsh da GitHub.
Quindi il primo passo è installare wget e git sul sistema. Ecco i comandi che devi eseguire:
Su Ubuntu:
apt install wget git
Su CentOS:
dnf install wget git
Ora scarica lo script di installazione ed eseguilo.
wget https://github.com/robbyrussell/oh-my-zsh/raw/master/tools/install.sh -O - | zsh
Il risultato/output dovrebbe essere simile a quello mostrato di seguito.
Quindi, oh-my-zsh è installato nella home directory '~/.oh-my-zsh'.
Successivamente, dobbiamo creare una nuova configurazione per zsh. Come con la shell Bash, che ha una configurazione denominata '.bashrc', per zsh, abbiamo bisogno di un file di configurazione '.zshrc'. È disponibile nella directory dei modelli oh-my-zsh.
Copia il modello .zshrc.zsh-template file di configurazione nella directory home .zshrc e applica la configurazione eseguendo il comando sorgente, come mostrato di seguito.
cp ~/.oh-my-zsh/templates/zshrc.zsh-template ~/.zshrc
source ~/.zshrc
Oh-my-zsh è ora installato sul sistema e la shell Z è stata configurata per l'utilizzo del framework oh-my-zsh con la configurazione predefinita.
Il seguente risultato è su Ubuntu.
Ed ecco cosa vedrai su CentOS.
Passaggio 3:modifica i temi predefiniti
La configurazione .zshrc predefinita fornita da oh-my-zsh utilizza il tema 'robbyrusell'. In questo passaggio, modificheremo la configurazione e cambieremo il tema predefinito.
Il framework Oh-my-zsh fornisce molti temi per la tua shell zsh, vai al link qui sotto per dare un'occhiata alle opzioni disponibili.
https://github.com/robbyrussell/oh-my-zsh/wiki/Themes
In alternativa, puoi andare alla directory 'temi' e vedere l'elenco dei temi disponibili.
cd ~/.oh-my-zsh/themes/
ls -a
Per cambiare il tema predefinito, dobbiamo modificare il file di configurazione .zshrc. Modifica la configurazione con l'editor di vim.
vim ~/.zshrc
Scegli un tema zsh, diciamo il tema 'risto'.
Quindi cambia la riga 'ZSH_THEME' 10 con il tema 'risto' come di seguito.
ZSH_THEME='risto'
Salva ed esci.
Ora, ricarica la configurazione .zshrc e vedrai che il tema 'risto' è attualmente utilizzato come tema della shell.
source ~/.zshrc
Il risultato su Ubuntu.
Risultato su CentOS.
Quindi, in questo modo, puoi applicare un nuovo tema oh-my-zsh.
Passaggio 4:abilita i plug-in Oh-my-zsh
Oh-my-zsh offre plugin fantastici. Ci sono molti plugin per il nostro ambiente, rivolti a sviluppatori, amministratori di sistema e chiunque altro.
I plugin predefiniti si trovano nella directory 'plugin'.
cd ~/.oh-my-zsh/plugins/
ls -a
In questo passaggio, modificheremo zsh utilizzando il framework "oh-my-zsh" abilitando alcuni plugin. Per abilitare i plugin, dobbiamo modificare il file di configurazione .zshrc.
Modifica il file di configurazione .zshrc.
vim ~/.zshrc
Vai alla riga 'plugin' 54 e aggiungi alcuni plugin che vuoi abilitare all'interno della parentesi (). Ad esempio, ecco la modifica che ho apportato nel mio caso:
plugins=(git extract web-search yum git-extras docker vagrant)
Di seguito è riportato il risultato quando si utilizza il plug-in 'extract':puoi estrarre file zip e tar utilizzando il comando 'extract'.
Comando Yum - yum info con solo il comando 'yp'.
Plugin Vagrant per il completamento automatico dei comandi.
Per concludere, sono state installate la shell Z, così come il framework oh-my-zsh. Inoltre, il tema predefinito oh-my-zsh è stato modificato con alcuni plugin abilitati.
Riferimenti
- https://github.com/robbyrussell/oh-my-zsh/wiki
- https://github.com/robbyrussell/oh-my-zsh/wiki/Themes
- https://github.com/robbyrussell/oh-my-zsh/wiki/Plugins