GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Pushd- und Popd-Befehle unter Linux

pushd und popd sind Befehle, mit denen Sie mit dem Verzeichnisstapel arbeiten und das aktuelle Arbeitsverzeichnis in Linux und anderen Unix-ähnlichen Betriebssystemen ändern können. Obwohl pushd und popd sind sehr mächtige und nützliche Befehle, sie werden unterschätzt und selten verwendet.

In diesem Tutorial zeigen wir Ihnen, wie Sie den pushd verwenden und popd Befehle zum Navigieren im Verzeichnisbaum Ihres Systems.

Verzeichnisstapel #

Der Verzeichnisstapel ist eine Liste von Verzeichnissen, zu denen Sie zuvor navigiert sind. Der Inhalt des Verzeichnisstapels kann mit dirs eingesehen werden Befehl. Verzeichnisse werden dem Stack hinzugefügt, wenn mit dem pushd in ein Verzeichnis gewechselt wird Befehl und mit dem popd entfernt Befehl.

Das aktuelle Arbeitsverzeichnis befindet sich immer ganz oben im Verzeichnisstapel. Das aktuelle Arbeitsverzeichnis ist das Verzeichnis (Ordner), in dem der Benutzer gerade arbeitet. Jedes Mal, wenn Sie mit der Befehlszeile interagieren, arbeiten Sie in einem Verzeichnis.

Das pwd Befehl können Sie herausfinden, in welchem ​​Verzeichnis Sie sich gerade befinden.

Verwenden Sie beim Navigieren durch das Dateisystem den Tab -Taste, um die Namen von Verzeichnissen automatisch zu vervollständigen. Das Hinzufügen eines Schrägstrichs am Ende des Verzeichnisnamens ist optional.

pushd , popd und dirs sind eingebaute Shells, und ihr Verhalten kann sich von Shell zu Shell leicht unterscheiden. Wir werden die in Bash eingebaute Version der Befehle behandeln.

pushd Befehl #

Die Syntax für den pushd Befehl lautet wie folgt:

pushd [OPTIONS] [DIRECTORY]

Zum Beispiel, um das aktuelle Verzeichnis ganz oben im Verzeichnisstapel zu speichern und zu /var/www zu wechseln Sie würden Folgendes eingeben:

~$ pushd /var/www

Bei Erfolg druckt der obige Befehl den Verzeichnisstapel. ~ ist das Verzeichnis, in dem wir den pushd ausgeführt haben Befehl. Das Tilde-Symbol ~ bedeutet Heimatverzeichnis.

/var/www ~

pushd speichert zuerst das aktuelle Arbeitsverzeichnis an der Spitze des Stapels und navigiert dann zum angegebenen Verzeichnis. Da sich das aktuelle Verzeichnis immer ganz oben auf dem Stack befinden muss, wird das neue aktuelle Verzeichnis nach einer Änderung ganz oben auf dem Stack abgelegt, aber nicht im Stack gespeichert. Um es zu speichern, müssen Sie pushd aufrufen davon. Wenn Sie cd verwenden Um in ein anderes Verzeichnis zu wechseln, geht das oberste Element des Stapels verloren,

Fügen wir dem Stack ein weiteres Verzeichnis hinzu:

/var/www$ pushd /opt
/opt /var/www ~

Um den Verzeichniswechsel zu unterdrücken, verwenden Sie das -n Möglichkeit. Zum Beispiel, um /usr/local hinzuzufügen Verzeichnis auf den Stack zu kopieren, aber nicht hinein zu wechseln, würden Sie Folgendes eingeben:

/opt$ pushd -n /usr/local

Da das aktuelle Verzeichnis (das immer ganz oben steht) nicht verändert wird, ist die Datei /usr/local Verzeichnis wird als zweites von oben zum Stack hinzugefügt:

/opt /usr/local /var/www ~

Der pushd akzeptiert zwei Optionen, +N und -N damit können Sie zu Nth navigieren Verzeichnis des Stapels. Das +N Option ändert sich zu Nth Element der Stapelliste von links nach rechts beginnend bei Null. Wenn -N verwendet wird, ist die Zählrichtung von rechts nach links.

Um die Optionen besser zu veranschaulichen, drucken wir den aktuellen Verzeichnisstapel aus:

/opt$ dirs -l -v

Die Ausgabe zeigt eine indizierte Liste des Verzeichnisstapels:

 0  /opt
 1  /usr/local
 2  /var/www
 3  /home/linuxize

Wenn Sie zu /var/www wechseln möchten Verzeichnis und bringen Sie es an die Spitze des Stapels, verwenden Sie eine der folgenden.

Wenn von oben nach unten (oder von links nach rechts) gezählt wird, ist der Index des Verzeichnisses 2 .

pushd +2

Beim Zählen von unten nach oben der Index der /var/www Verzeichnis ist 1 .

pushd -1.

Bei Verwendung ohne Argument pushd schaltet die obersten zwei Verzeichnisse um und macht die neue oberste zum aktuellen Verzeichnis. Dies ist dasselbe wie bei der Verwendung von cd - Befehl.

popd Befehl #

Der popd Befehl hat die Form:

popd [OPTIONS]

Bei Verwendung ohne Argument popd entfernt das oberste Verzeichnis vom Stack und navigiert zum neuen obersten Verzeichnis.

Nehmen wir an, wir haben den folgenden Verzeichnisstapel:

/opt /usr/local /var/www /etc/nginx ~

Wenn Sie popd ausführen Befehl wird es den /opt entfernen vom Stack und wechseln Sie zu /usr/local Verzeichnis:

/opt$ popd

Die Ausgabe zeigt den neuen Verzeichnisstapel:

/usr/local /var/www /etc/nginx ~

Das -n Die Option unterdrückt den standardmäßigen Verzeichniswechsel und entfernt das zweite Element aus dem Stapel:

/opt$ popd -n
/usr/local /etc/nginx ~

Das gleiche wie pushd , popd akzeptiert auch +N und -N Optionen, die verwendet werden können, um den Nth zu entfernen Verzeichnis des Stapels.

/opt$ popd +1
/usr/local ~

Schlussfolgerung #

Normalerweise würden Sie das cd verwenden Befehl, um von einem Verzeichnis in ein anderes zu wechseln. Wenn Sie jedoch viel Zeit auf der Befehlszeile verbringen, kann pushd und popd Befehle steigern Ihre Produktivität und Effizienz.

Wenn Sie Fragen oder Feedback haben, können Sie gerne einen Kommentar hinterlassen.


Linux
  1. Navigieren in der Bash-Shell mit pushd und popd

  2. Navigationstipps für die Linux-Befehlszeile:Die Grundlagen der Befehle pushd und popd

  3. Erstellen, Löschen und Verwalten von Verzeichnissen unter Linux

  4. Linux-Befehle:jobs, bg und fg

  5. 11 Nützliche „ssh“- und „scp“-Befehle unter Linux

Linux pushd und popd Command Tutorial für Anfänger (3 Beispiele)

So verwenden Sie die Befehle Pushd, Popd und Dirs für eine schnellere CLI-Navigation

So verwenden Sie die Befehle Pbcopy und Pbpaste unter Linux

Top 30 Linux-Befehle

Linux-Verzeichnisbefehle:Eine vollständige Anleitung

Linux /-Ordner und /root-Ordner