Heute werden wir einige Produktivitäts-Hacks für die Befehlszeile lernen. Wie Sie bereits wissen, verwenden wir den Befehl "cd", um in Unix-ähnlichen Betriebssystemen zwischen einem Stapel von Verzeichnissen zu wechseln. In diesem Handbuch werde ich Ihnen beibringen, wie Sie unter Linux schneller durch Verzeichnisse navigieren können, ohne häufig den Befehl „cd“ verwenden zu müssen. Es könnte viele Möglichkeiten geben, aber ich kenne im Moment nur die folgenden fünf Methoden! Ich werde diesen Leitfaden ständig aktualisieren, wenn ich in den kommenden Tagen auf Methoden oder Dienstprogramme stoße, um diese Aufgabe zu erfüllen.
Fünf verschiedene Methoden zum schnelleren Navigieren in Verzeichnissen unter Linux
Methode 1:Verwenden der Befehle "Pushd", "Popd" und "Dirs"
Dies ist die häufigste Methode, die ich täglich verwende, um zwischen einem Stapel von Verzeichnissen zu navigieren. Die Befehle „Pushd“, „Popd“ und „Dirs“ sind in den meisten Linux-Distributionen vorinstalliert, also brauchen Sie sich nicht um die Installation zu kümmern. Diese Trio-Befehle sind sehr nützlich, wenn Sie in einer tiefen Verzeichnisstruktur und Skripten arbeiten. Weitere Einzelheiten finden Sie in unserem Leitfaden unter dem unten angegebenen Link.
- So verwenden Sie Pushd-, Popd- und Dirs-Befehle für eine schnellere CLI-Navigation
Methode 2:Verwenden des Dienstprogramms "bd"
Das Dienstprogramm "bd" hilft Ihnen auch, schnell zu einem bestimmten übergeordneten Verzeichnis zurückzukehren, ohne wiederholt "cd ../.../" eingeben zu müssen. auf Ihrer Bash.
Bd ist auch im Debian-Extra verfügbar und Ubuntu-Universum Lagerstätten. Sie können es also mit dem Paketmanager "apt-get" in Debian, Ubuntu und anderen DEB-basierten Systemen wie unten gezeigt installieren:
$ sudo apt-get update
$ sudo apt-get install bd
Andere Distributionen können Sie wie unten gezeigt installieren.
$ sudo wget --no-check-certificate -O /usr/local/bin/bd https://raw.github.com/vigneshwaranr/bd/master/bd
$ sudo chmod +rx /usr/local/bin/bd
$ echo 'alias bd=". bd -si"' >> ~/.bashrc
$ source ~/.bashrc
Um die automatische Vervollständigung zu aktivieren, führen Sie Folgendes aus:
$ sudo wget -O /etc/bash_completion.d/bd https://raw.github.com/vigneshwaranr/bd/master/bash_completion.d/bd
$ source /etc/bash_completion.d/bd
Das Bd-Dienstprogramm ist jetzt installiert. Sehen wir uns einige Beispiele an, um zu verstehen, wie man mit diesem Tool schnell durch Stapel von Verzeichnissen navigiert.
Erstellen Sie einige Verzeichnisse.
$ mkdir -p dir1/dir2/dir3/dir4/dir5/dir6/dir7/dir8/dir9/dir10
Der obige Befehl erstellt eine Hierarchie von Verzeichnissen. Lassen Sie uns die Verzeichnisstruktur überprüfen mit Befehl:
$ tree dir1/ dir1/ └── dir2 └── dir3 └── dir4 └── dir5 └── dir6 └── dir7 └── dir8 └── dir9 └── dir10 9 directories, 0 files
Okay, wir haben jetzt 10 Verzeichnisse. Nehmen wir an, Sie befinden sich derzeit im 7. Verzeichnis, dh dir7.
$ pwd /home/sk/dir1/dir2/dir3/dir4/dir5/dir6/dir7
Sie möchten nach dir3 wechseln. Normalerweise würden Sie Folgendes eingeben:
$ cd /home/sk/dir1/dir2/dir3
Recht? ja! Aber es ist nicht notwendig aber! Um zu dir3 zurückzukehren, geben Sie einfach ein:
$ bd dir3
Jetzt befinden Sie sich im Verzeichnis3.
Navigieren Sie unter Linux schneller durch Verzeichnisse mit dem Dienstprogramm "bd"
Einfach, nicht wahr? Es unterstützt die automatische Vervollständigung, sodass Sie einfach den teilweisen Namen eines Verzeichnisses eingeben und die Tabulatortaste drücken können, um den vollständigen Pfad automatisch zu vervollständigen.
Um den Inhalt eines bestimmten übergeordneten Verzeichnisses zu überprüfen, müssen Sie sich nicht in dieses bestimmte Verzeichnis begeben. Geben Sie stattdessen einfach Folgendes ein:
$ ls `bd dir1`
Der obige Befehl zeigt den Inhalt von dir1 aus Ihrem aktuellen Arbeitsverzeichnis an.
Weitere Einzelheiten finden Sie auf der folgenden GitHub-Seite.
- bd GitHub-Repository
Methode 3:Verwenden des "Up"-Shell-Skripts
Das "Up" ist ein Shell-Skript, mit dem Sie schnell in Ihr übergeordnetes Verzeichnis wechseln können. Es funktioniert gut auf vielen beliebten Shells wie Bash, Fish und Zsh usw. Die Installation ist auch absolut einfach!
Um "Up" auf Bash zu installieren , führen Sie die folgenden Befehle nacheinander aus:
$ curl --create-dirs -o ~/.config/up/up.sh https://raw.githubusercontent.com/shannonmoeller/up/master/up.sh
$ echo 'source ~/.config/up/up.sh' >> ~/.bashrc
Das up-Skript registriert die "up"-Funktion und einige Vervollständigungsfunktionen über Ihre ".bashrc"-Datei.
Aktualisieren Sie die Änderungen mit dem Befehl:
$ source ~/.bashrc
Auf zsh :
$ curl --create-dirs -o ~/.config/up/up.sh https://raw.githubusercontent.com/shannonmoeller/up/master/up.sh
$ echo 'source ~/.config/up/up.sh' >> ~/.zshrc
Das up-Skript registriert die "up"-Funktion und einige Vervollständigungsfunktionen über Ihre ".zshrc"-Datei.
Aktualisieren Sie die Änderungen mit dem Befehl:
$ source ~/.zshrc
Auf Fisch :
$ curl --create-dirs -o ~/.config/up/up.fish https://raw.githubusercontent.com/shannonmoeller/up/master/up.fish
$ source ~/.config/up/up.fish
Das up-Skript registriert die "up"-Funktion und einige Vervollständigungsfunktionen über "funcsave".
Jetzt ist es an der Zeit, einige Beispiele zu sehen.
Lassen Sie uns einige Verzeichnisse erstellen.
$ mkdir -p dir1/dir2/dir3/dir4/dir5/dir6/dir7/dir8/dir9/dir10
Nehmen wir an, Sie befinden sich im 7. Verzeichnis, dh dir7.
$ pwd /home/sk/dir1/dir2/dir3/dir4/dir5/dir6/dir7
Sie möchten nach dir3 wechseln. Mit dem Befehl "cd" können wir dies tun, indem wir den folgenden Befehl eingeben:
$ cd /home/sk/dir1/dir2/dir3
Aber es ist wirklich einfach, mit dem "up"-Skript zu dir3 zurückzukehren:
$ up dir3
Das ist es. Jetzt befinden Sie sich in dir3. Um ein Verzeichnis nach oben zu gehen, geben Sie einfach ein:
$ up 1
Um zwei Verzeichnisse zurückzugehen, geben Sie Folgendes ein:
$ up 2
So einfach ist das. Habe ich den vollständigen Pfad eingegeben? Nö. Außerdem unterstützt es die Tab-Vervollständigung. Geben Sie also einfach den teilweisen Verzeichnisnamen ein und drücken Sie die Tabulatortaste, um den vollständigen Pfad zu vervollständigen.
Weitere Einzelheiten finden Sie auf der GitHub-Seite.
- GitHub-Repository aktualisieren
Bitte beachten Sie, dass die Tools "bd" und "up" Ihnen nur helfen können, rückwärts zu gehen, d.h. zum übergeordneten Verzeichnis des aktuellen Arbeitsverzeichnisses. Du kannst nicht vorankommen. Wenn Sie von dir5 zu dir10 wechseln möchten, können Sie das nicht! Stattdessen müssen Sie den Befehl „cd“ verwenden, um zu dir10 zu wechseln. Diese beiden Dienstprogramme sind dazu gedacht, Sie schnell in das übergeordnete Verzeichnis zu verschieben!
Methode 4:Verwenden des „Shortcut“-Tools
Dies ist eine weitere praktische Methode, um schnell und einfach zwischen verschiedenen Verzeichnissen zu wechseln. Dies ist etwas ähnlich zu alias Befehl. Bei dieser Methode erstellen wir Verknüpfungen zu häufig verwendeten Verzeichnissen und verwenden den Verknüpfungsnamen, um zu diesem jeweiligen Verzeichnis zu wechseln, ohne den Pfad eingeben zu müssen. Wenn Sie in einer tiefen Verzeichnisstruktur und einem Stapel von Verzeichnissen arbeiten, spart diese Methode viel Zeit. Wie das funktioniert, erfahren Sie in der unten stehenden Anleitung.
- Erstellen Sie Verknüpfungen zu den häufig verwendeten Verzeichnissen in Ihrer Shell
Methode 5:Verwenden der Umgebungsvariable "CDPATH"
Diese Methode erfordert keine Installation. CDPATH ist eine Umgebungsvariable. Es ist etwas ähnlich zu PATH Variable, die viele verschiedene Pfade enthält, die mit ':' verkettet sind (Doppelpunkt). Der Hauptunterschied zwischen PATH- und CDPATH-Variablen besteht darin, dass die PATH-Variable mit allen Befehlen verwendet werden kann, während CDPATH nur für cd funktioniert Befehl.
Ich habe die folgende Verzeichnisstruktur.
Verzeichnisstruktur
Wie Sie sehen, gibt es vier untergeordnete Verzeichnisse unter einem übergeordneten Verzeichnis namens "ostechnix".
Fügen Sie nun dieses übergeordnete Verzeichnis mit dem Befehl:
zu CDPATH hinzu$ export CDPATH=~/ostechnix
Sie können jetzt sofort in die Unterverzeichnisse des übergeordneten Verzeichnisses wechseln (z. B. ~/ostechnix in unserem Fall) von überall im Dateisystem.
Zum Beispiel bin ich derzeit in /var/mail/ Ort.
pwd-Befehlsausgabe
Auf CD in ~/ostechnix/Linux/ Verzeichnis, müssen wir nicht den vollständigen Pfad des Verzeichnisses verwenden, wie unten gezeigt:
$ cd ~/ostechnix/Linux
Nennen Sie stattdessen einfach den Namen des Unterverzeichnisses, zu dem Sie wechseln möchten:
$ cd Linux
Es wird automatisch nach ~/ostechnix/Linux gecd Verzeichnis sofort.
cdpath-Umgebungsvariable
Wie Sie in der obigen Ausgabe sehen können, habe ich "cd
Bitte beachten Sie, dass Sie mit CDPATH schnell zu nur einem untergeordneten Verzeichnis des in der CDPATH-Variablen festgelegten übergeordneten Verzeichnisses navigieren können. Es hilft nicht viel beim Navigieren durch einen Stapel von Verzeichnissen (natürlich Verzeichnisse in Unterverzeichnissen).
Um die Werte der CDPATH-Variablen zu finden, führen Sie Folgendes aus:
$ echo $CDPATH
Beispielausgabe wäre:
/home/sk/ostechnix
Setzen Sie mehrere Werte auf CDPATH
Ähnlich wie bei der PATH-Variablen können wir auch mehrere Werte (mehr als ein Verzeichnis) auf CDPATH setzen, getrennt durch einen Doppelpunkt (:).
$ export CDPATH=.:~/ostechnix:/etc:/var:/opt
Machen Sie die Änderungen dauerhaft
Wie Sie bereits wissen, behält der obige Befehl (Export) nur die Werte von CDPATH bis zum nächsten Neustart. Um die Werte von CDPATH dauerhaft festzulegen, fügen Sie sie einfach zu Ihrer ~/.bashrc hinzu oder ~/.bash_profile Dateien.
$ vi ~/.bash_profile
Fügen Sie die Werte hinzu:
export CDPATH=.:~/ostechnix:/etc:/var:/opt
Drücken Sie ESC drücken und :wq eingeben zum Speichern und Beenden.
Übernehmen Sie die Änderungen mit dem Befehl:
$ source ~/.bash_profile
CDPATH löschen
Um die Werte von CDPATH zu löschen, verwenden Sie export CDPATH="" . Oder löschen Sie einfach die gesamte Zeile aus ~/.bashrc oder ~/.bash_profile Dateien.
In diesem Artikel haben Sie die verschiedenen Möglichkeiten zum schnelleren und einfacheren Navigieren im Verzeichnisstapel unter Linux kennengelernt. Wie Sie sehen können, ist es nicht so schwierig, einen Stapel von Verzeichnissen schneller zu durchsuchen. Hören Sie jetzt auf, endlos "cd ../../.." zu tippen, indem Sie diese Tools verwenden. Wenn Sie ein anderes Tool oder eine Methode kennen, die es wert ist, schneller durch Verzeichnisse zu navigieren, teilen Sie uns dies bitte im Kommentarbereich unten mit. Ich werde sie in diesem Leitfaden überprüfen und hinzufügen.