So wechseln Sie in Linux effizient zwischen Verzeichnissen

So wechseln Sie in Linux effizient zwischen Verzeichnissen

Wenn es um den Verzeichniswechsel unter Linux geht, fällt jedem sicherlich ein Befehl ein: der cd -Befehl. Dies ist ein sehr einfacher Befehl unter Linux. Wenn Sie diesen Befehl nicht kennen, können Sie genauso gut Selbstmord begehen, indem Sie Ihren Bauch aufschneiden.

Der Befehl cd ist zwar sehr praktisch, aber wenn Sie häufig zwischen den folgenden Verzeichnissen wechseln müssen, zweifeln Sie möglicherweise an Ihrem Leben:

/home/alvin/projekte/blogdemos/linux-system-programmierung/thread
/home/alvin/projekte/blogdemos/diff
/home/harry/study/Japanische Kultur/Chinesisch-japanischer Austausch/Film- und Fernsehindustrie/Actionfilme

Wenn Sie nur den Befehl „cd“ kennen, müssen Sie die CD immer wieder ausführen, bis Sie verrückt werden.

Wie können wir in diesem Fall effizient zwischen Verzeichnissen wechseln? Liang Xu möchte Ihnen drei Befehle vorstellen: pushd , popd und dirs .

Diese drei Befehle wirken sich tatsächlich auf目錄棧aus, eine Stapelstruktur, in目錄棧gespeichert werden. Das aktuelle Verzeichnis wird immer oben in der Stapelstruktur gespeichert (Achtung, das ist der entscheidende Punkt!!).

Studierende mit Grundkenntnissen in der Programmierung wissen, dass后進先出-Prinzip folgen. Das heißt, in der Stapelstruktur werden die Elemente, die später in den Stapel geschoben werden, zuerst herausgeholt.

Nachdem wir die grundlegenden Konzepte besprochen haben, schauen wir uns diese drei Befehle genauer an.

Zeigt den Inhalt des Verzeichnisstapels an: dirs

Erstens, dirs . Dieser Befehl ist sehr einfach, er zeigt lediglich den Inhalt des Verzeichnisstapels an. Es gibt die folgenden drei allgemeinen Optionen:

Optionen Bedeutung
-P Einen Datensatz pro Zeile anzeigen
-v Jede Zeile zeigt einen Datensatz und den Index des Datensatzes im Stapel an.
-C Löschen des Verzeichnisstapels

Der Unterschied zwischen -p und -v besteht darin, dass die Option -v den Index jedes Datensatzes im Stapel anzeigt. Ansonsten sind sie genau gleich. Angenommen, es gibt jetzt einen Verzeichnisstapel. Schauen wir uns an, was darin enthalten ist:

[alvin@VM_0_16_centos dir2]$ pwd
/home/alvin/test/dir2
[alvin@VM_0_16_centos dir2]$ dirs -v
 0 ~/test/dir2
 1 ~/test/dir1
 2 ~/test/dir3
 3 ~/Test

Bitte beachten Sie, dass das oberste Element immer dem aktuellen Verzeichnis entspricht. Wenn Sie den Verzeichnisstapel in einem anderen Verzeichnis anzeigen, ändert sich das erste Element entsprechend. Wenn Sie zum Bedienen des Verzeichnisstapels die später eingeführten pushd und popd verwenden, wird das aktuelle Verzeichnis auf die Adresse umgeschaltet, die dem ersten Element des Verzeichnisstapels entspricht.

Wenn wir den Verzeichnisstapel löschen möchten, verwenden Sie einfach die Option -c .

[alvin@VM_0_16_centos diff]$ dirs -c
[alvin@VM_0_16_centos diff]$ dirs -v
 0 ~/Projekte/Blogdemos/Diff

Pushen auf den Verzeichnisstapel: pushd

Bei jeder Ausführung des Pushd-Befehls wird standardmäßig ein Dirs-Befehl ausgeführt, um den Inhalt des Verzeichnisstapels anzuzeigen. Es gibt mehrere Hauptverwendungszwecke für pushd:

1. pushd + Verzeichnis

Wenn pushd direkt mit einem Verzeichnis verwendet wird, wechselt es zu diesem Verzeichnis und legt es oben im Verzeichnisstapel ab. Beispiel:

[alvin@VM_0_16_centos test]$ pushd dir1
~/test/dir1 ~/test
[alvin@VM_0_16_centos dir1]$ pushd ../dir2
~/test/Verzeichnis2 ~/test/Verzeichnis1 ~/test
[alvin@VM_0_16_centos dir2]$ pushd ../dir3
~/test/Verzeichnis3 ~/test/Verzeichnis2 ~/test/Verzeichnis1 ~/test
[alvin@VM_0_16_centos dir3]$ dirs -v
 0 ~/test/dir3
 1 ~/test/dir2
 2 ~/test/dir1
 3 ~/Test

2. pushd (ohne Parameter)

Die Ausführung von pushd ohne Parameter bewirkt, dass die beiden obersten Verzeichnisse im Verzeichnisstapel vertauscht werden. Wir haben zuvor betont, dass das erste Element des Verzeichnisstapels mit dem aktuellen Verzeichnis zusammenhängt. Wenn sich also das erste Element ändert, wird das aktuelle Verzeichnis entsprechend gewechselt und umgekehrt.

[alvin@VM_0_16_centos dir3]$ dirs -v
 0 ~/test/dir3
 1 ~/test/dir2
 2 ~/test/dir1
 3 ~/Test
[alvin@VM_0_16_centos dir3]$ pwd
/home/alvin/test/dir3
[alvin@VM_0_16_centos dir3]$ pushd
~/test/Verzeichnis2 ~/test/Verzeichnis3 ~/test/Verzeichnis1 ~/test
[alvin@VM_0_16_centos dir2]$ pwd
/home/alvin/test/dir2 #Das entsprechende Verzeichnis ändert sich [alvin@VM_0_16_centos dir2]$ dirs -v
 0 ~/test/dir2
 1 ~/test/dir3 #Tausche den Inhalt der Indexe 0 und 1 aus 2 ~/test/dir1
 3 ~/Test

**3. gedrückt +/-n **

pushd +/-n bedeutet, direkt in das Verzeichnis des entsprechenden Indexwerts zu wechseln. Beachten Sie, dass Sie entweder ein Pluszeichen oder ein Minuszeichen verwenden können. Wenn es ein Pluszeichen ist, wird vom oberen Ende des Verzeichnisstapels nach unten gezählt, und wenn es ein Minuszeichen ist, wird vom unteren Ende des Verzeichnisstapels nach oben gezählt.

Als nächstes kehren wir zur Frage am Anfang dieses Artikels zurück. Was sollten wir tun, wenn wir häufig zwischen zwei oder mehr Verzeichnissen mit langen Pfaden wechseln müssen?

Zuerst verwenden wir pushd + Verzeichnis, um diese Pfade zum Verzeichnisstapel hinzuzufügen;

Verwenden Sie dann pushd +/-n, um schnell zwischen verschiedenen Verzeichnissen zu wechseln. Die konkrete Demonstration sieht wie folgt aus:

[alvin@VM_0_16_centos dir2]$ pwd
/home/alvin/test/dir2
[alvin@VM_0_16_centos dir2]$ dirs -v
 0 ~/test/dir2
 1 ~/test/dir3
 2 ~/test/dir1
 3 ~/Test
[alvin@VM_0_16_centos dir2]$ pushd +2
~/test/Verzeichnis1 ~/test ~/test/Verzeichnis2 ~/test/Verzeichnis3
[alvin@VM_0_16_centos dir1]$ pwd
/home/alvin/test/dir1
[alvin@VM_0_16_centos dir1]$ dirs -v
 0 ~/test/dir1
 1 ~/Test
 2 ~/test/dir2
 3 ~/test/dir3

Den Verzeichnisstapel aufpoppen: popd

Bei jeder Ausführung des Befehls „popd“ wird standardmäßig ein „dirs“-Befehl ausgeführt, um den Inhalt des Verzeichnisstapels anzuzeigen. Die Verwendung von popd ist hauptsächlich wie folgt:

1. popd (ohne Parameter)

Die Ausführung von popd ohne Parameter bewirkt, dass das oberste Element im Verzeichnisstapel angezeigt wird. Zu diesem Zeitpunkt ändert sich das oberste Element des Stapels und natürlich wechselt auch das aktuelle Verzeichnis entsprechend.

[alvin@VM_0_16_centos dir3]$ dirs -v
 0 ~/test/dir3
 1 ~/test/dir1
 2 ~/Test
 3 ~/test/dir2
[alvin@VM_0_16_centos dir3]$ popd
~/test/Verzeichnis1 ~/test ~/test/Verzeichnis2
[alvin@VM_0_16_centos dir1]$ dirs -v
 0 ~/test/dir1
 1 ~/Test
 2 ~/test/dir2

2. popd +/-n

Löscht das n-te Element im Verzeichnisstapel. Ebenso geben die Plus- und Minuszeichen an, ob von oben nach unten oder von unten nach oben gezählt werden soll.

[alvin@VM_0_16_centos dir1]$ dirs -v
 0 ~/test/dir1
 1 ~/Test
 2 ~/test/dir2
[alvin@VM_0_16_centos dir1]$ popd +1
~/test/dir1 ~/test/dir2
[alvin@VM_0_16_centos dir1]$ dirs -v
 0 ~/test/dir1
 1 ~/test/dir2

Damit ist dieser Artikel zum effizienten Wechseln von Verzeichnissen unter Linux abgeschlossen. Weitere Informationen zum effizienten Wechseln von Verzeichnissen unter Linux finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, Sie werden 123WORDPRESS.COM auch in Zukunft unterstützen!

Das könnte Sie auch interessieren:
  • So ermitteln Sie, ob Dateien und Verzeichnisse in der Linux-Shell vorhanden sind
  • So extrahieren Sie Dateinamen und Verzeichnisnamen aus der Linux-Shell
  • So ändern Sie den Speicherort des MySQL-Datenbankverzeichnisses unter Linux (CentOS)
  • Suchen Sie das laufende Nginx-Verzeichnis im Linux-System
  • Batch-Extraktion aller Verzeichnisse und Dateinamen unter einem Ordner in Linux
  • Detaillierte Erklärung, wie man in Linux nach Zeit gefilterte Dateien in einem Verzeichnis findet
  • So rufen Sie ein Verzeichnis/einen Ordner in Linux auf, ohne den CD-Befehl zu verwenden
  • Codebeispiel für die Implementierung des Linux-Verzeichniswechsels

<<:  Detaillierte Erklärung der JavaScript-Array-Deduplizierung

>>:  MySQL 8.0.21-Installationstutorial unter Windows-System (Abbildung und Text)

Artikel empfehlen

Detaillierte Erläuterung gängiger Methoden von JavaScript Array

Inhaltsverzeichnis Methoden, die das ursprünglich...

So erkennen Sie die Ubuntu-Version mithilfe der Befehlszeile

Methode 1: Verwenden Sie das Dienstprogramm lsb_r...

So schreiben Sie eleganten JS-Code

Inhaltsverzeichnis Variable Verwenden Sie aussage...

Neue Einstellungen für Text und Schriftarten in CSS3

Textschatten Textschatten: horizontaler Versatz, ...

Detaillierte Erklärung der Speicher-Engine in MySQL

Übersicht über die MySQL-Speicher-Engine Was ist ...

Grafisches Tutorial zur Installation und Konfiguration von MySQL 5.7

In diesem Tutorial erfahren Sie alles über die In...

Nodejs-Fehlerbehandlungsprozessaufzeichnung

In diesem Artikel wird der Verbindungsfehler ECON...

Zusammenfassung der Blockelemente, Inline-Elemente und variablen Elemente

Blockelement p - Absatz Text vorformatieren Tisch ...

Hinweise zum Zeichengerätetreiber des Linux-Kernel-Gerätetreibers

/******************** * Zeichengerätetreiber*****...

React Diff-Algorithmus-Quellcodeanalyse

Inhaltsverzeichnis Einzelner Knoten Diff Einzelel...