Odata cu lansarea macOS Catalina, pe langa multele noutati si caracteristici, Apple a introdus si Zsh (Z shell) in locul Bash (Bourne-again shell). Utilizatorii familiarizati cu scripturile Bash si liniile de comanda interactive din Terminal, au observat rapid aceasta schimbare. In Terminal este sugerata executarea unei linii de comanda pentru a se face trecerea de la Bash la Zsh.
The default interactive shell is now zsh.
To update your account to use zsh, please run `chsh -s /bin/zsh`.
For more details, please visit https://support.apple.com/kb/HT208050.
Folosit inca de acum 16 ani, de pe vremea OS X 10.2 Jaguar, Bash a fost utilizat ca shell principal de dezvoltatori pentru scripturi si linii de comanda catre baza sistemului macOS.
De ce s-a facut trecerea de la Bash la Zsh
In termeni simpli, ar fi vorba despre restrictiile impuse de licenta de distributie (GNU) pentru utilizarea Bash.
Bash este in plin proces de dezvoltare, ajuns la versiunea 5.0. Versiune finala lansata la inceputul lunii ianuarie 2019. Cu toate acestea, Apple a utilizat pana la MacOS Mojave (lansat in toamna lui 2018) o versiune invechita. A fost preferat Bash 3.2, o versiune din 2007. Versiunile mai noi de Bash au fost lansate cu licenta GNU General Public License modificata (GPLv3), ce impune unele restrictii si clauze pentru furnizorii de software.
Bash vs. Zsh
Pentru utilizatori, trecerea de la Bash la Zsh ar trebui sa fie un motiv de bucurie. In special pentru cei care folosesc in mod frecvent Terminal. Zsh (Z shell) este bazat pe acelasi limbaj ca si Bash, dar aduce caracteristici interesante. Linii de comanda intuitive, plugin-uri si teme grafice.
Pe langa comenzile Bash, in Zsh sunt multe alte comenzi specifice, iar multe pot fi configurate de utilizator pentru executarea unor operatiuni. Alias.
– completare automata a liniilor de comanda (auto-completare)
– variabile extinse
– replace path
– extindere intuitiva cale. “/u/lo/b <TAB>” merge la “/usr/local/bin”
– suport oh-my-zsh pentru capabilitati extinse
– themes support in Terminal
– multe altele, prezentate aici.
Oh-My-Zsh este cel mai popular framework pentru Zsh, fiind livrat cu multe plugin-uri si teme incluse. Usor de instalat, configurat si de personalizat.
Cum instalam Oh-My-Zsh pentru Zsh pe macOS
Executati in Terminal linia de comanda:
sh -c "$(curl -fsSL https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"
Dupa instalarea oh-my-zsh aveti la dispozitie o librarie generoasa de plugins si themes. In plus, sunt foarte multe optiuni de configurare si personalizare in functie de preferinte. Toate detaliile le gasiti aici.
Recomandari module si utilitare: iTerm2 (terminal emulator, ce va inlocui Terminal), Homebrew si tema POWERLEVEL9K pentru Zsh (Oh-My-Zsh).
Cum schimbam default shell in macOS Catalina
Daca nu sunteti multumiti de Zsh, puteti reveni oricand la Bash in macOS Catalina. Totusi retineti ca este o versiune de Bash rudimentara, din 2007.
Executati in Terminal linia de comanda pentru a reveni la Bash:
chsh -s /bin/bash
Pe langa Bash si Zsh puteti sa activati si alte shells in macOS Catalina.
Executati in Terminal comanda cat /etc/shells
prin care puteti sa vedeti shells incluse in macOS Catalina.
/bin/bash
/bin/csh
/bin/dash
/bin/ksh
/bin/sh
/bin/tcsh
/bin/zsh