So wechseln Sie unter Linux von Bash zu Fish Shell

Die Fish Shell: Eine moderne Alternative zur Bash

Viele Nutzer von Linux-Terminals sind an die Bash gewöhnt. Dies führt oft zu einer suboptimalen Terminal-Erfahrung, da die Bash von Haus aus keine modernen Features bietet. Wenn Sie ein besseres und effizienteres Terminal wünschen, könnte ein Wechsel zur Fish Shell die Lösung sein.

Installation der Fish Shell

Bevor Sie die Fish Shell als Ihre Standard-Terminal-Shell festlegen, müssen Sie sie unter Linux installieren. Die Fish Shell erfreut sich großer Beliebtheit, weshalb Pakete für fast jede Linux-Distribution verfügbar sind. Öffnen Sie ein Terminal und verwenden Sie den entsprechenden Befehl, um die Shell zu installieren.

Ubuntu

sudo apt install fish

Debian

sudo apt-get install fish

Arch Linux

sudo pacman -S fish

Fedora

sudo dnf install fish

OpenSUSE

sudo zypper install fish

Andere Linux-Distributionen

Die Fish Shell ist bereits seit einiger Zeit verfügbar und bietet viele moderne Funktionen. Aufgrund ihrer langen Geschichte ist die Installation auf den meisten Linux-Distributionen unkompliziert. Suchen Sie in Ihrem Paketmanager nach „fish“ oder „fish-shell“. Alternativ können Sie die offizielle Github-Seite besuchen und die Shell aus dem Quellcode kompilieren.

Von Bash zur Fish Shell wechseln

Die Verwendung von Fish als Hauptshell kann anfangs eine Umstellung sein, da sie sich deutlich von Bash unterscheidet. Im Gegensatz zu anderen Alternativen (wie Zsh oder Ksh) basiert Fish nicht auf dem Bash-System. Aufgrund dieses Designs funktionieren einige Befehle möglicherweise nicht mehr wie gewohnt und Sie müssen Ihre Terminal-Gewohnheiten anpassen.

Es gibt eine ausgezeichnete Informationsquelle, die alle Feinheiten der Fish Shell und ihrer Umgebung detailliert beschreibt. Diese Ressource erklärt die Fish-Syntax, den Umgang mit Pipes und vieles mehr. Wenn Sie einen Wechsel erwägen, sollten Sie diese Dokumentation unbedingt durchlesen.

Nachdem Sie sich mit dem Cheatsheet vertraut gemacht haben, können Sie Ihr Terminal öffnen und die Standardshell Ihres Benutzers von Bash auf Fish ändern. Verwenden Sie den Befehl „chsh“ im Terminal, aber achten Sie darauf, diesen nicht mit „sudo“ auszuführen, da dies die Shell des Root-Benutzers anstelle Ihrer eigenen ändern könnte.

chsh -s /usr/bin/fish

Durch den „chsh“-Befehl wird Ihrem Benutzer die neue Shell zugewiesen. Um sofortigen Zugriff auf Fish zu erhalten, tippen Sie einfach „fish“ in das Terminal ein. Alternativ können Sie Ihren Linux-PC neu starten, um den Wechsel abzuschließen. Nach dem Neustart melden Sie sich wieder an und öffnen Sie das Terminal erneut. Wenn alles geklappt hat, ist Fish Ihre neue Standardshell und Sie werden mit der Fish-Shell anstelle von Bash begrüßt.

Konfiguration der Fish Shell

Obwohl Sie auf die Fish Shell umgestellt haben, ist sie noch nicht vollständig einsatzbereit. Der nächste Schritt ist die Konfiguration. Erstellen Sie im Terminal einen neuen Konfigurationsordner:

mkdir -p ~/.config/fish

Erstellen Sie anschließend eine neue Konfigurationsdatei im neuen Fish-Konfigurationsordner:

touch ~/.config/fish/config.fish

Durch die Verwendung von „touch“ wird eine leere Konfigurationsdatei für die Fish-Shell erstellt. Hier können Sie nun individuelle Einstellungen hinzufügen. Für die meisten Nutzer ist die einzige notwendige Änderung die permanente Deaktivierung der Willkommensnachricht. Fügen Sie diese Änderung Ihrer Fish-Konfiguration mit dem folgenden Befehl hinzu:

echo 'set fish_greeting ""' >> ~/.config/fish/config.fish

Sicherung der Fish-Konfiguration

Das Einrichten von Fish auf mehreren Computern kann mühsam sein, da Sie für jeden Rechner eine neue Konfiguration erstellen müssen. Eine schnellere Methode ist die Sicherung der Konfigurationsdatei und deren Wiederherstellung auf anderen PCs, auf denen Sie Fish nutzen möchten. Führen Sie den folgenden Befehl im Terminal aus, um die Konfiguration zu sichern:

cp ~/.config/fish/config.fish ~/Documents/

Um die Konfiguration wiederherzustellen, verschieben Sie die Datei auf den neuen PC, speichern Sie sie im Ordner „Dokumente“ und verwenden Sie diesen Befehl:

mkdir -p ~/.config/fish
cp ~/Documents/config.fish ~/.config/fish/config.fish

Anpassung der Fish Shell

Im Großen und Ganzen ist Fish nun einsatzbereit. Wenn Sie die Shell jedoch weiter anpassen und konfigurieren möchten, gibt es verschiedene Möglichkeiten. Führen Sie im Terminal folgenden Befehl aus:

fish_config

Dieser Befehl öffnet automatisch einen neuen Tab in Ihrem Browser, der verschiedene Aspekte von Fish zur Anpassung anzeigt.

Im Fish_Config-Fenster können Sie voreingestellte Designs auswählen, Variablen zuweisen, benutzerdefinierte Funktionen erstellen, den Befehlsverlauf anzeigen, Abkürzungen und Aliase definieren und vieles mehr!

Automatische Vervollständigung in Fish

Das herausragendste Feature von Fish ist die Autovervollständigungsfunktion. Sie ist anderen Shells weit voraus und allein dieses Feature könnte selbst eingefleischte Bash-Nutzer davon überzeugen, sich Fish anzusehen. Das Beste daran ist, dass es keine besonderen Kenntnisse für die Nutzung erfordert. Selbst Terminal-Anfänger können von dieser Funktion profitieren.

Um die automatische Vervollständigung von Fish zu verwenden, gehen Sie zum Terminal und beginnen Sie mit der Eingabe eines Befehls. Während Sie tippen, wird die Shell versuchen, die Befehle zu erraten. Sie korrigiert sich, wenn sie weitere Informationen erhält. Sie können einen Befehl jederzeit automatisch vervollständigen, indem Sie die rechte Pfeiltaste auf Ihrer Tastatur drücken. Sobald Sie die richtige Taste drücken, wird Ihr halbfertiger Befehl automatisch vervollständigt.