Bash¶
Die Bash - als defakto Standard-Shell - ist die erste Shell-Anlaufstelle für Linux-User.
Gerne nutzen wir die grafischen Oberflächen und Tools unter dem Desktop unserer Wahl. Aber wenn es darum geht unser System sauber zu verwalten und zu admininstrieren, dann wenden wir uns immer einer Shell zu.
Und natürlich gibt es auf Linux-Systemen immer auch die Möglichkeit alternative Shells oder Terminals zu installieren und nach eigenen Wünschen zu konfigurieren.
In der Interaktion mit den Shells gibt es hier nur wenige Abweichungen zu beachten.
Ganz anders sieht das allerdings dann später beim Shellscripting aus. Hier können sich die Shells sehr unterschiedlich verhalten und sogar Fehler beim Ausführen zeigen.
Für einen kurzen Überblick über die aktuellen verfügbaren Shells auf einem System:
$ cat /etc/shells
# /etc/shells: valid login shells
/bin/sh
/bin/bash
/usr/bin/bash
/bin/rbash
/usr/bin/rbash
/bin/dash
/usr/bin/dash
/bin/zsh
/usr/bin/zsh
/usr/bin/tmux
Auf dem hier dargestellten System wurde die zsh und tmux bereitgestellt.
Wir konzentrieren uns aber auf die Bourne Again Shell BASH den Nachfolger der sh.
Hinweis
Ich habe mich in den letzten Jahren zur Nutzung der ZSH entschlossen. Aber wie immer bei Linux: wir dürfen auf unseren Systemen selber wählen, oder natürlich auch mehrere Shell nutzen.
Wer gerne unterschiedliche Shells nutzt, aber die Erscheinung und Nutzung einheitlich halten möchte, der kann sich ja mal mit dem Tools Starship beschäftigen. Diese Aufrüschung des Terminals macht nur in Terminalemulatoren (gnome-terminal, konsole, xterm, urxvt, st, alacritty, kitty) inklusive sogenannter Nerdfonts einen Sinn - das rohe TTY lässt man oft einfach.
Fangen wir erst einmal mit zwei meiner Basistools an: für die Arbeit in der Shell ist eine effiziente Suche von Dateien/Ordner und das Finden von Befehlen sehr wichtig!