Was ist ZSH und warum sollte ich es anstelle von Bash verwenden??

Inhalt

ZSH, auch Z-Schale genannt, ist eine erweiterte Version von Bourne Shell (NS), mit vielen neuen Funktionen und Unterstützung für Plugins und Themes. Da es auf der gleichen Shell wie Bash . basiert, ZSH hat viele der gleichen Funktionen, und wechseln ist ganz einfach.

Dann, Warum es verwenden??

ZSH hat zu viele Funktionen hier auflisten, einige kleinere Verbesserungen an bash, aber das sind einige der wichtigsten:

  • Automatische CD: Geben Sie einfach den Namen des Verzeichnisses ein
  • Rekursive Pfaderweiterung: Als Beispiel, “/ du / es / B” wird erweitert auf “/ usr / lokal / Behälter”
  • Rechtschreibprüfung und grober Abschluss: Wenn Sie bei der Eingabe eines Verzeichnisnamens einen kleinen Fehler machen, ZSH wird es für Sie reparieren
  • Plugin- und Theme-Unterstützung: ZSH enthält viele verschiedene Plugin-Frameworks

Kompatibilität mit Plugins und Themes ist wahrscheinlich das interessanteste Feature von ZSH und darauf werden wir uns hier konzentrieren.

ZSH-Installation

Wenn Sie macOS verwenden und Hausgemachtes Bier Eingerichtet (was sollte), Sie können ZSH mit einem einzigen Befehl installieren:

brauen installieren zsh

Auch für macOS-Benutzer, Sie sollten wahrscheinlich iTerm anstelle des nativen Terminals verwenden, da es eine viel bessere Farbverträglichkeit hat (gleichzeitig von vielen anderen Features).

Wenn Sie Linux verwenden, Befehle können je nach Distribution variieren, aber es sollte ein Standardpaket in Ihrem Paketmanager sein. Du kannst nachschauen diese Anleitung wenn du probleme hast.

Wenn es unter Windows ist, Vielleicht hast du Bash gar nicht erst. Sie können dieser Anleitung folgen, um es zu konfigurieren und ZSH zu aktivieren.

Oh-My-Zsh-Installation

Oh-mi-Zsh ist das beliebteste Plugin-Framework für ZSH, und es kommt auch mit vielen Plugins und integrierten Themes. Außerdem gibt es noch ein paar andere Plugin-Frameworks, einschließlich Antigen, das ist ein kompletter Paketmanager für ZSH, aber Oh-My-Zsh hat viele eingebaute Plugins und macht seinen Job gut.

Oh-My-Zsh hat ein einfaches Installationsskript, das Sie ausführen können:

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

Von dort, Sie können Plugins aktivieren und deaktivieren, indem Sie sie zu Ihrer .zshrc-Datei hinzufügen, befindet sich in Ihrem Verzeichnis ~.

Eine vollständige Liste der Plugins erhalten Sie im Repository Oh-My-Zsh.

Themen

Es gibt viele Themen für jeden, aber powerlevel9k es ist, mit viel, die coolste. Rechtsbündiges Infofeld hinzufügen, Integration mit Git und Befehlsverlauf, unglaubliche Anpassung und verpackt alles in einer schlanken Benutzeroberfläche basierend auf dem Stromleitung Ergänzung zu vi.

Sie möchten iTerm unter macOS verwenden, oder jedes Terminal mit der Farbe 24 Bits, um das Beste aus powerlevel9k herauszuholen (oder ein beliebiges ZSH-Theme, Genau genommen).

So konfigurieren Sie powerlevel9k (si instaló Oh-My-Zsh) Klonen Sie einfach das Repo im Ordner für benutzerdefinierte Designs .oh-my-zsh:

git clone https://github.com/bhilburn/powerlevel9k.git ~/.oh-my-zsh/custom/themes/powerlevel9k

Sie müssen es also in .zshrc aktivieren:

ZSH_THEME="powerlevel9k/powerlevel9k"

Danach, Holen Sie sich Ihre .zshrc, und Sie sollten die vorgenommenen Änderungen sehen.

Wenn Sie wünschen, Sie können das Standard-Flag anpassen, indem Sie POWERLEVEL9K_LEFT_PROMPT_ELEMENTS in Ihrer .zshrc . definieren. Hier ist mein, mit minimaler Vorankündigung:

POWERLEVEL9K_LEFT_PROMPT_ELEMENTS=(vcs dir rbenv)
POWERLEVEL9K_RIGHT_PROMPT_ELEMENTS=(root_indicator background_jobs Statuslast)

Sie finden die vollständige Dokumentation für powerlevel9k im Repository.

setTimeout(Funktion(){
!Funktion(F,B,e,v,n,T,S)
{wenn(f.fbq)Rückkehr;n=f.fbq=Funktion(){n.callMethode?
n.callMethod.apply(n,Argumente):n.queue.push(Argumente)};
wenn(!f._fbq)f._fbq = n;n.drücken=n;n.geladen=!0;n.version=’2.0′;
n.Warteschlange=[];t=b.Element erstellen(e);t.async=!0;
t.src=v;s=b.getElementsByTagName(e)[0];
s.parentNode.insertBefore(T,S) } (window, dokumentieren,'Skript',
„https://connect.facebook.net/en_US/fbevents.js’);
fbq('drin', ‘335401813750447’);
fbq('Spur', 'Seitenansicht');
},3000);

Abonniere unseren Newsletter

Wir senden Ihnen keine SPAM-Mail. Wir hassen es genauso wie du.