ZSH die Beste Shell

Beschreibung

Die Z-Shell oder zsh ist eine interaktive UNIX-Shell und ein leistungsfähiger Befehlszeileninterpreter für Skriptsprachen, einschließlich Shell-Skripting. Zsh wurde seit 1990 von Paul Fastad‘ entwickelt, und der Name zsh‘ kommt von dem Yale-Professor Zong Shao.

Installation

Alle hier angeben Befehle habe ich auf ein Ubuntu basiertes System ausgeführt (Mint 20).

Die Installation ist recht einfach. In diesem Befehl wird die zsh mit syntax highlighting installiert, dazu wird auch noch das Theme Powerline installiert.

sudo apt install zsh powerline fonts-powerline zsh-syntax-highlighting git

Desweiteren kann ich nur jedem empfehlen der die zsh nutzt auch gleich das Framework Oh-My-ZSH zu nutzen. Dabei handelt es sich um ein git repro.

https://github.com/ohmyzsh/ohmyzsh

Die Installation von Oh-My-ZSH ist recht einfach.

sh -c "$(wget https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/
install.sh -O -)"

Konfiguration

Ähnlich wie die Bash nutzt die zsh eine Konfigurationsfile, wo du deine Einstellungen setzen kannst ~/.zshrc.

Mit dem folgenden Befehl aktivierst du das Highlighting

echo "source /usr/share/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh" >> ~/.zshrc

Da wir in diesem Beispiel das Framework Oh-My-ZSH installiert haben, können wir auch alle möglichen Plugins von dem Framework nutzen. Die Plugins findest du hier.

https://github.com/ohmyzsh/ohmyzsh/tree/master/plugins

Aktiviert werden die Plugins in der Datei ~/.zshrc. Zum Beispiel so.

plugins=(
        git
        kubectl
        colored-man-pages
        ansible
        asdf
        direnv
        docker-compose
        docker
        history
        )

Also Theme nutze ich powerlevel10k.

https://github.com/romkatv/powerlevel10k

Dieses Theme wird wie folgt installiert.

git clone --depth=1 https://github.com/romkatv/powerlevel10k.git ${ZSH_CUSTOM:-$HOME/.oh-my-zsh/custom}/themes/powerlevel10k

Danach kann das Theme in der .zshrc aktiviert werden.

ZSH_THEME="powerlevel10k/powerlevel10k"

Zum Schluss zeige ich noch alle meine Einstellungen in der .zshrc

cat .zshrc|grep "^[^#]"
export ZSH="/home/jonnybravo/.oh-my-zsh"
ZSH_THEME="powerlevel10k/powerlevel10k"
plugins=(
	git
	kubectl
	colored-man-pages
	ansible
	asdf
	direnv
	docker-compose
	docker
	history
	)
source $ZSH/oh-my-zsh.sh
alias gitlabrootps="kubectl get secret gitlab-gitlab-initial-root-password -ojsonpath='{.data.password}' | base64 --decode ; echo"
source /usr/share/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh
/usr/bin/screenfetch

setopt share_history extended_history
setopt hist_ignore_all_dups hist_ignore_space
setopt auto_cd correct rm_star_wait

[[ ! -f ~/.p10k.zsh ]] || source ~/.p10k.zsh

Und kleine Info die History ist eine File .zsh_history ….WAHNSINN !!

In der Datei .zshenv oder /etc/zsh/zshenv können Umgebungsvariablen gespeichert werden.

Schreibe einen Kommentar