Eine der bekanntesten Funktionen von ZSH ist die Anpassbarkeit und Erweiterbarkeit von Funktionen mithilfe externer Frameworks, Plugins, Themes und mehr.
Die grundlegendste Möglichkeit zum Anpassen und Konfigurieren von ZSH ist die Verwendung der ZSH-Konfigurationsdatei, die sich normalerweise im Home-Verzeichnis unter dem Namen „.zshrc“ befindet.
Daher kann das Erlernen der grundlegenden Funktionen des ZSH-Profils sehr wichtig sein, um zu lernen, wie Sie Ihr ZSH-Terminal konfigurieren. Unabhängig davon, ob Sie ein externes Framework wie Oh My ZSH, Antigen usw. verwenden, müssen Sie wissen, wie Sie Ihre ZSH-Konfigurationsdatei bearbeiten und konfigurieren.
In diesem Tutorial führen wir Sie durch das ZSH-Profil. Dies hilft Ihnen bei der Konfigurationssyntax und den unterstützten Funktionen und bietet Ihnen auch einige Tipps und Tricks, wie Sie Ihr Terminal-Erlebnis verbessern können.
ZSH installieren
Wie jedes Paket und Tool im Unix-Ökosystem müssen wir sicherstellen, dass es auf unserem System installiert ist.
Auf Linux-Systemen können Sie ZSH mit Ihrem Standard-Paketmanager wie APT für Debian-Systeme, DNF und Yum für Fedora, Pacman für Arch und mehr installieren.
$ Sudo apt-get installieren zshWenn Sie macOS verwenden, ist ZSH die Standard-Shell (je nach Version) und sofort verfügbar. Wenn Sie es jedoch aus irgendeinem Grund nicht installiert haben, können Sie es mit Homebrew wie folgt installieren:
$ brauen Installieren zsh
Nach Abschluss können wir ZSH beim Start als Standard-Shell-Interpreter konfigurieren. Sie können dies tun, indem Sie den folgenden Befehl ausführen:
$ Chsh -S $ ( welche zsh )Dadurch sollte die Standard-Shell auf ZSH geändert werden.
Das ZSH-Profil verstehen
Wie bereits erwähnt, erfolgt die Konfiguration von ZSH über die Datei „.zshrc“. Lassen Sie uns näher darauf eingehen, was das ist und wie es funktioniert.
Was ist .Zshrc?
„.zshrc“ ist die Abkürzung für Z-Shell Run Control. Es handelt sich um eine versteckte Datei (gekennzeichnet durch den Anfang), die sich im Home-Verzeichnis (~/.zshrc) befindet.
ZSH liest und führt jeden Befehl aus, der in dieser Datei definiert ist, jedes Mal, wenn Sie eine neue Shell-Sitzung starten. Dazu gehört das Öffnen eines neuen Terminalfensters, eines neuen Tabs oder das Ausführen eines Skripts in ZSH.
Im Folgenden sind einige Hauptverwendungszwecke der Datei „.zshrc“ aufgeführt:
- Konfigurieren von PATH, Definieren der Umgebungsvariablen und anderer Einstellungen
- Erstellen von Verknüpfungen für Befehle und Definieren der Funktionen für komplexe oder sich wiederholende Aufgaben
- Ändern des Erscheinungsbilds der Shell-Eingabeaufforderung
- Festlegen der Shell-Optionen und Konfigurieren des Verhaltens bei der Befehlsvervollständigung
Die Syntax für die Datei „.zshrc“ entspricht im Wesentlichen der ZSH-Skriptsprache. ZSH ist Bash mit einigen Verbesserungen und Syntaxänderungen sehr ähnlich. Weitere Informationen finden Sie in unserem Tutorial zum Wechsel von Bash zu ZSH.
Anpassen des ZSH-Profils
Die erste und häufigste Aufgabe bei der Arbeit mit Ihrem Shell-Profil ist das Anpassen der Shell-Eingabeaufforderung. Wir können dies mithilfe der Escape-Sequenzen und speziellen Variablen tun.
Schauen Sie sich den folgenden Beispielcode an:
PS1 = '%n@%m %~ %(!.#.$) 'In diesem Fall übernimmt die PS1-Variable die Anpassung Ihrer Eingabeaufforderung. Im Folgenden wird angegeben, was jede spezielle Variable darstellt.
- %n – Benutzername
- %m – Hostname
- %~ – Aktuelles Verzeichnis
- %(!.#.$) – Unterschiedliche Eingabeaufforderungszeichen für Root-Benutzer (#) und Nicht-Root-Benutzer ($).
Festlegen der Variablen
Um eine Variable in ZSH festzulegen, verwenden wir den Variablennamen, ein Gleichheitszeichen und den Wert der Variablen. Die Syntax lautet wie folgt:
VARIABLENNAMEN = 'Wert'Wir können dann im gesamten Skript auf die zuvor definierte Variable verweisen.
Exportieren der Variablen
Wir können die Variablen auch exportieren, um sie Unterprozessen entweder in der aktuellen Sitzung oder beim Laden der Shell zur Verfügung zu stellen.
Ein Beispiel ist wie folgt:
Export WEG = '/usr/local/bin: $PATH 'Aliase
Eine weitere sehr nützliche Funktion von ZSH sind Aliase. Aliase sind im Grunde Abkürzungen für lange Befehle, die Sie am häufigsten verwenden.
In ZSH können wir einen Alias wie in der folgenden Syntax gezeigt definieren:
alias alias = 'command_format'Angenommen, wir möchten einen kürzeren Befehl für den Befehl „ls –lah“ erstellen. Wir können einen Alias wie folgt erstellen:
alias ll = 'ls -lah'Funktionen
Das nächste, worüber wir Bescheid wissen müssen, sind Funktionen. Mithilfe von Funktionen können wir wiederverwendbare Codeblöcke definieren, die wir als einzelne Entität aufrufen können.
Die Syntax zum Definieren einer Funktion in ZSH lautet wie folgt:
Funktion Funktionsname {# Logik
}
Angenommen, wir möchten eine Funktion haben, die die Wetterinformationen durch eine Curl-Anfrage abruft. Anstatt den gesamten Befehl einzugeben, können wir eine einfache Funktion definieren, die dies wie folgt erledigt:
Funktion Wetter ( ) {Curl wttr.in
}
Wenn wir nun die Wetterinformationen abrufen müssen, können wir einfach diese Funktion aufrufen und sie erledigt die ganze Arbeit für uns.
Tastenbelegungen
Mithilfe von Tastenkombinationen können wir eine Reihe von Tastenfolgen definieren, die einer bestimmten Operation zugeordnet sind. Wir können beispielsweise eine Tastenkombination erstellen, mit der wir den Befehlsverlauf durchsuchen können.
In ZSH definieren wir die Tastenbindung mit dem Befehl „bindkey“. Nehmen Sie das folgende Beispiel:
bindkey '^R' Verlauf-inkrementelle-Suche-rückwärtsDieses Beispiel bindet die Tastenfolge „STRG + R“ an die Suchfunktion für den Befehlsverlauf.
Weitere Anpassungsmöglichkeiten finden Sie in unserem Tutorial zu ZSH-Tastenbelegungen.
Automatische Vervollständigung
ZSH bietet eine leistungsstarke Autovervollständigung. Sie können es aktivieren, indem Sie der Konfiguration die folgenden Einträge hinzufügen:
automatisches Laden -Zu kompinitkompinit
Tipps und Tricks
Im Folgenden finden Sie einige nützliche Tipps und Tricks, die Sie bei der Arbeit in ZSH kennen müssen:
Befehlsverlauf
Navigieren Sie mit Tastaturkürzeln durch den Befehlsverlauf.
- Strg-R – Rückwärts suchen
- Strg-S – Vorwärts suchen
- Pfeil nach oben – Vorheriger Befehl
- Abwärtspfeil – Nächster Befehl
Rekursives Globing
Um das rekursive Globing zu aktivieren, verwenden Sie **. Zum Beispiel:
Echo **/* .txtBefehlsersetzung
Verwenden Sie $(command), um die Ausgabe eines Befehls in einen anderen Befehl einzufügen.
Debuggen
Um die Probleme beim ZSH-Start zu beheben, verwenden Sie „zsh –xv“, um die Datei „.zshrc“ zu debuggen.
Sie können die Startzeit für Ihre ZSH-Konfiguration auch mit dem Befehl „zprof“ profilieren.
Abschluss
In diesem Tutorial haben wir alles besprochen, was Sie wissen müssen, wenn Sie mit dem ZSH-Profil arbeiten. Wir haben Ihnen auch einige Tipps und Tricks gegeben, die Ihnen helfen können, Ihr ZSH-Erlebnis zu verbessern.