Acasă
» LINUX
»
Cum să treci de la Bash la Zsh pe Linux
Cum să treci de la Bash la Zsh pe Linux
Pentru a trece de la Bash la Zsh pe Linux, instalați Zsh, testați-l, apoi setați-l shell-ul dvs. de conectare cu [numele utilizatorului] chsh. Migrați doar setările Bash de care aveți nevoie; Oh My Zsh este opțional.
Zsh are fișiere de pornire diferite și nu este complet compatibil cu alte sintaxe shell. Scripturile care încep cu ` #!/bin/bashfolosesc în continuare Bash`. Consultați manualul Zsh .
1. Instalați Zsh cu managerul de pachete
Deschide un terminal și rulează comanda pentru distribuția ta:
Distribuție Linux
Comandă de instalare
Ubuntu, Debian, Linux Mint
sudo apt install zsh
Fedora și multe sisteme bazate pe RHEL
sudo dnf install zsh
Arch Linux, Manjaro
sudo pacman -S zsh
openSUSE
sudo zypper install zsh
Exemplu de comandă package-manager pentru instalarea Zsh pe o distribuție bazată pe Debian.
Localizați executabilul și verificați versiunea acestuia:
command -v zsh
zsh --version
Găsiți executabilul Zsh instalat înainte de a schimba shell-ul de conectare.
Calea poate fi /usr/bin/zshsau /bin/zsh; folosește propriul rezultat. Verifică dacă este aprobată pentru autentificare cu:
grep -Fx "$(command -v zsh)" /etc/shells
Un rezultat gol înseamnă că este posibil ca este posibil ca această cale să nu fie aprobată pentru conectare. Solicitați administratorului să actualizeze lista de shell-uri a sistemului, dacă este necesar. Consultați manualul shells-urilor Linux .
3. Încercați Zsh înainte de a-l seta ca implicit
Porniți o sesiune Zsh temporară, apoi afișați versiunea acesteia:
zsh
echo "$ZSH_VERSION"
Pornește Zsh în terminalul curent pentru a-l încerca fără a modifica setările contului tău.
Dacă nu aveți fișiere personale de pornire, Zsh poate afișa o solicitare de configurare la prima rulare; administratorii o pot dezactiva. Urmați opțiunile sale sau configurați fișierele singuri. Tastați exitpentru a reveni la Bash. Acest test nu modifică shell-ul de conectare.
4. Configurați Zsh și mutați setările selectiv
Zsh citește setările interactive din ~/.zshrc. Într-un fișier nou, adăugați:
.zshrcExemplu de istoric și setări de finalizare într-un fișier personal .
Aceste linii salvează istoricul comenzilor și inițializează finalizarea. Adăugați liniile necesare la un fișier existent în loc să îl înlocuiți. Consultați referința fișierului de pornire Zsh .
Mută aliasurile și funcțiile utile dintr- un fișier ~/.bashrcîn ~/.zshrcaltul pe rând și testează-le. Completarea specifică Bash sau codul de promptare ar putea să nu funcționeze în Zsh. Lasă scripturile Bash și #!/bin/bashliniile aferente neschimbate.
5. Folosește Zsh ca shell de autentificare
După ce Zsh pornește și setările de bază funcționează, modificați shell-ul de conectare al propriului cont:
chsh -s "$(command -v zsh)"
Schimbați shell-ul de conectare al contului curent folosind calea raportată de command -v zsh.
Introduceți parola dacă vi se solicită. Aceasta modifică shell-ul de conectare al contului, nu procesul Bash care rulează deja. Dacă este necesar, un administrator autorizat poate executa [numele utilizatorului] sudo chsh -s "$(command -v zsh)" "$USER". Consultați manualul chsh . Evitați să modificați shell-ul utilizatorului root decât dacă este necesar.
6. Deschideți un terminal nou și verificați
Închide terminalul curent și deschide unul nou sau deconectează-te și conectează-te din nou. Apoi verifică atât shell-ul configurat al contului, cât și shell-ul care rulează:
echo "$SHELL"
ps -p $$ -o comm=
Verificați shell-ul de conectare configurat și procesul shell într-un terminal nou.
Prima comandă ar trebui să afișeze calea Zsh; a doua ar trebui să raporteze [numele codului] zsh. Dacă Bash se deschide în continuare, verificați dacă profilul terminalului lansează un shell personalizat. O modificare a shell-ului de autentificare afectează și noile sesiuni SSH, așa că testați Zsh înainte de a schimba un cont la distanță.
7. Opțional, instalați Oh My Zsh
Oh My Zsh este opțional și gestionează teme și pluginuri. Necesită Zsh, Git și curl/sau wget. Fișierul README oficial listează această comandă de instalare:
sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
Comanda oficială de instalare Oh My Zsh afișată într-un terminal.
Proiectul recomandă inspectarea scriptului înainte de a-l rula. Faceți o copie de rezervă a oricărui fișier existent ~/.zshrc; programul de instalare îl redenumește în ~/.zshrc.pre-oh-my-zsh.
8. Alegeți o temă și pluginuri
În ~/.zshrc, alegeți o temă și pluginuri, de exemplu:
ZSH_THEME="robbyrussell"
plugins=(git docker)
Setările temei și pluginului aparțin .zshrcfișierului Oh My Zsh.
Separați numele pluginurilor prin spații, nu prin virgule. Verificați documentația pluginului, apoi deschideți un terminal nou sau executați exec zshpentru a reîncărca. Oh My Zsh nu este necesar pentru a utiliza Zsh.
Corecții comune
chshrespinge calea: comparați command -v zshcu intrările din /etc/shells, apoi întrebați administratorul dacă sistemul gestionează acea listă.
Aliasurile au dispărut: mutați aliasurile compatibile în ~/.zshrc; Zsh nu citește automat fișierul . al lui Bash ~/.bashrc.
Un script Bash eșuează: rulați-l cu Bash sau păstrați-i shebang-ul Bash. Schimbarea shell-ului de conectare interactiv nu convertește scripturile în Zsh.