Manchmal kann es schmerzhaft sein, mit Befehlen durch das Linux-Dateisystem zu navigieren, insbesondere für Neulinge. Normalerweise verwenden wir hauptsächlich den Befehl cd (Change Directory), um uns im Linux-Dateisystem zu bewegen.
In einem früheren Artikel haben wir ein einfaches, aber hilfreiches CLI-Dienstprogramm für Linux namens bd besprochen, mit dem Sie schnell in ein übergeordnetes Verzeichnis zurückkehren können, ohne cd ../.../... einzugeben wiederholt.
Dieses Tutorial erklärt einen verwandten Befehlssatz:„pushd “ und „popd “, die für eine effiziente Navigation in der Linux-Verzeichnisstruktur verwendet werden. Sie existieren in den meisten Shells wie bash, tcsh etc.
Empfohlener Text: Autojump – Ein erweiterter „cd“-Befehl zum schnellen Navigieren im Linux-Dateisystem
Funktionsweise der pushd- und popd-Befehle unter Linux
push und popd arbeiten nach dem „LIFO ” (last in, first out)-Prinzip. In diesem Prinzip sind nur zwei Operationen erlaubt:ein Element in den Stapel schieben und ein Element aus dem Stapel ziehen.
pushd fügt ein Verzeichnis an die Spitze des Stacks hinzu und popd entfernt ein Verzeichnis von der Spitze des Stacks.
Um Verzeichnisse im Verzeichnisstapel (oder Verlauf) anzuzeigen, können wir die dirs verwenden Befehl wie gezeigt.
$ dirs OR $ dirs -v
pushd-Befehl – fügt Verzeichnispfade in einen Verzeichnisstapel (Verlauf) ein/hinzu und ermöglicht Ihnen später, zu jedem Verzeichnis im Verlauf zurückzunavigieren. Während Sie dem Stack Verzeichnisse hinzufügen, wird auch angezeigt, was im Verlauf (oder „Stack“) vorhanden ist.
Die Befehle zeigen, wie pushd funktioniert:
$ pushd /var/www/html/ $ pushd ~/Documents/ $ pushd ~/Desktop/ $ pushd /var/log/
Aus dem Verzeichnisstapel in der obigen Ausgabe (Verzeichnisindex ist in umgekehrter Reihenfolge):
- /var/log ist der fünfte [Index 0] im Verzeichnisstapel.
- ~/Desktop/ ist Vierter [Index 1].
- ~/Dokumente/ ist Dritter [Index 2].
- /var/www/html/ ist an zweiter Stelle [Index 3] und
- ~ ist zuerst [Index 4].
Optional können wir den Verzeichnisindex in der Form pushd +#
verwenden oder pushd -#
um Verzeichnisse zum Stack hinzuzufügen. Um in ~/Documents zu wechseln , würden wir Folgendes eingeben:
$ pushd +2
Beachten Sie, dass sich danach der Stapelinhalt ändert. Also aus dem vorherigen Beispiel, um nach /var/www/html zu wechseln , würden wir verwenden:
$ pushd +1
popd-Befehl – entfernt ein Verzeichnis von der Spitze des Stapels oder Verlaufs. Um den Verzeichnisstapel aufzulisten, geben Sie Folgendes ein:
$ popd
Um ein Verzeichnis aus dem Verzeichnisstapel zu entfernen, verwenden Sie popd +#
oder popd -#
, würden wir in diesem Fall den folgenden Befehl eingeben, um ~/Documents zu entfernen :
$ popd +1
Sehen Sie sich auch an:Fasd – Ein Befehlszeilentool, das schnellen Zugriff auf Dateien und Verzeichnisse bietet
In diesem Tutorial haben wir „pushd erklärt “ und „popd “-Befehle, die für eine effiziente Navigation in der Verzeichnisstruktur verwendet werden. Teilen Sie Ihre Gedanken zu diesem Artikel über das Feedback-Formular unten mit.