In Windows ist das Ändern von Verzeichnissen ein grundlegender Bestandteil der Dateiverwaltung, aber würden Sie sich damit zufrieden geben, für jedes besuchte Verzeichnis den vollständigen Pfad zu schreiben? Glücklicherweise können PowerShell-Befehle zum Ändern von Verzeichnissen Ihr Leben einfacher machen.
In diesem Tutorial werden Sie die verfügbaren Befehle zum Ändern von Verzeichnissen in PowerShell erkunden und Ihnen helfen, Ihr Dateisystem mühelos zu navigieren.
Lesen Sie weiter und beherrschen Sie noch heute die Grundlagen der Dateisystemnavigation mit PowerShell!
Voraussetzungen
In diesem Tutorial wird eine praktische Demonstration durchgeführt. Um mitzumachen, stellen Sie sicher, dass Sie ein Windows-System mit PowerShell installiert haben. Dieses Tutorial verwendet Windows 10 und PowerShell v7.
Wechseln von einem Laufwerk zu einem anderen
Jedes Speichergerät, wie eine Festplatte oder ein USB-Laufwerk, wird einem Laufwerksbuchstaben zugewiesen (z. B. C:, D:, E:, …Z:). Wenn Sie ein PowerShell-Fenster öffnen, befindet sich der Prompt standardmäßig im Benutzerprofilverzeichnis auf dem aktuellen Laufwerk.
Angenommen, Sie benötigen häufigen Zugriff auf Dateien oder Ordner, die auf einem anderen Laufwerk als dem aktuellen gespeichert sind. In diesem Fall ist ein Wechsel von einem Laufwerk zu einem anderen erforderlich.
Um zu sehen, wie Sie von einem Laufwerk zu einem anderen wechseln können:
1. Öffnen Sie PowerShell und überprüfen Sie, ob die Eingabeaufforderung C:\Users\admin. lautet. Wenn ja, befinden Sie sich derzeit im Laufwerk C: im Profilverzeichnis des Benutzers admin, wie unten gezeigt.

2. Öffnen Sie als Nächstes eine weitere PowerShell-Sitzung, diesmal jedoch als Administrator.
Die Eingabeaufforderung beginnt unten in einem anderen Standardverzeichnis als beim Starten von PowerShell als normaler Benutzer. Speziell beginnt die Eingabeaufforderung im Verzeichnis System32 im Verzeichnis Windows auf dem aktuellen Laufwerk (C:), wie unten gezeigt.
Dieses Standardverhalten verhindert, dass nicht-administrative Benutzer versehentlich kritische Systemdateien ändern oder sensitive Tools ausführen.

3. Führen Sie den unten stehenden Befehl aus, um das aktuelle Laufwerk auf D:
(oder ein anderes verfügbares Laufwerk) zu ändern. Diese Syntax ist eine schnelle Möglichkeit, zwischen verschiedenen Laufwerken in PowerShell zu navigieren.
Beim Wechseln von Laufwerken in PowerShell mit dieser Methode ändert sich die Eingabeaufforderung auf das Stammverzeichnis des neuen Laufwerks, wie im Ausgabebereich unten gezeigt.
Wie Sie sehen können, können Sie unabhängig vom Standardverzeichnis, in dem PowerShell gestartet wird, immer zu einem anderen Laufwerk wechseln.

4. Führen Sie nun den unten stehenden Befehl aus, um zu versuchen, in das Verzeichnis D:\Kitty
(oder in ein anderes Unterverzeichnis) zu wechseln.
Haben Sie denselben Fehler wie unten erhalten? Dieser Fehler tritt auf, da Sie mit dieser Methode nicht sofort zu Unterverzeichnissen (zum Beispiel, D:\Kitty) wechseln können.
Springen Sie zum folgenden Abschnitt, um zu sehen, wie Sie zu Unterverzeichnissen wechseln können.

Navigieren im Dateisystem über den Befehl cd
Das Navigieren durch mehrere Unterverzeichnisse ist eine häufige Aufgabe in PowerShell. Aber gibt es eine schnelle Möglichkeit, durch verschiedene Unterverzeichnisse zu navigieren? Ja! Der cd
-Befehl, kurz für „Change Directory“, ermöglicht es Ihnen, schnell zu einem anderen Unterverzeichnis zu wechseln, unabhängig von Ihrem aktuellen Verzeichnis.
Früher wurde der
cd
-Befehl verwendet, um zwischen Laufwerken und Verzeichnissen in der Eingabeaufforderung zu navigieren. Microsoft hat dencd
-Befehl abwärtskompatibel gemacht, damit Sie immer noch zwischen Verzeichnissen in PowerShell navigieren können.
Lesen Sie weiter und sehen Sie, wie Sie Ihr Dateisystem mit dem cd
-Befehl navigieren können.
Wechseln zu einem Verzeichnis auf einem anderen Laufwerk
Es mag wie eine lästige Aufgabe erscheinen, zu einem Unterverzeichnis in einem anderen Laufwerk zu wechseln. Nun, es gibt keinen Grund, es zu übertreiben. Sie werden überrascht sein, wie schnell der cd
-Befehl es Ihnen ermöglicht, zu einem anderen Laufwerk zu wechseln, während Sie in eines seiner Verzeichnisse wechseln.
Führen Sie den untenstehenden Befehl aus, um zum Unterverzeichnis namens Kitty
im Laufwerk D:*
zu navigieren.

Ein bis viele Ebenen nach oben in der Verzeichnishierarchie wechseln
Mit der Verwaltung des Dateisystems oder bei der Arbeit an einem Projekt müssen Sie möglicherweise häufig um eine oder zwei Ebenen von Ihrem aktuellen Verzeichnis nach oben wechseln. Der cd-Befehl unterstützt die Notation ..
, mit der Sie effektiv zum übergeordneten Verzeichnis Ihres aktuellen Verzeichnisses wechseln können.
Diese Funktion ermöglicht es Ihnen, eine Ebene in Ihrem Dateisystem nach oben zu wechseln, ohne den vollständigen Pfad zum übergeordneten Verzeichnis anzugeben.
1. Führen Sie den folgenden cd
-Befehl aus, fügen Sie ein Leerzeichen und die Notation ..
hinzu, um PowerShell anzuweisen, eine Ebene in der Verzeichnishierarchie nach oben zu gehen.
Das Leerzeichen nach dem
cd
-Befehl ist nicht erforderlich, da der Befehl auch ohne gut funktioniert. Das Hinzufügen eines Leerzeichens ist jedoch eine gängige Praxis für bessere Lesbarkeit und Konsistenz mit anderen Befehlen.
Im folgenden Beispiel sehen Sie, dass die Eingabeaufforderung eine Ebene von C:\Users\admin\Documents auf das Verzeichnis C:\Users\admin wechselt. Beachten Sie, dass Sie den vollständigen Pfad für das Verzeichnis C:\Users\admin nicht angeben mussten, um nach oben zu wechseln.

2. Anstatt eine Ebene nach oben zu wechseln, führen Sie den folgenden Befehl mit zwei ..
-Notationen aus und fügen Sie am Ende jeweils einen Backslash (\
) hinzu. Dadurch können Sie zwei Ebenen in der Verzeichnishierarchie nach oben wechseln.
Im folgenden Beispiel sehen Sie, dass Sie von C:\Users\admin\Documents direkt zum Verzeichnis C:\Users gewechselt sind.

3. Führen Sie abschließend den Befehl unten aus, um zum Stammverzeichnis Ihres aktuellen Laufwerks zu wechseln.
Wenn Sie sich im Dateisystem verirrt haben, ist dieser Befehl nützlich, da Sie schnell zum Stammverzeichnis springen können. Dieser Befehl spart Ihnen den Aufwand, den Befehl cd ..
mehrmals auszuführen.

Das Bewegen in ein bestimmtes Unterverzeichnis
Wie das Bewegen eine Ebene höher in der Verzeichnishierarchie ist das Bewegen in ein bestimmtes Unterverzeichnis ebenfalls eine schnelle Aufgabe. Da es viele Unterverzeichnisse geben könnte, funktionieren Anmerkungen wie die vorherigen (..
und ..\
) möglicherweise nicht. Sie müssen den Namen des Unterverzeichnisses angeben.
Führen Sie den folgenden Befehl aus, um in eines der Unterverzeichnisse (\admin
) in Ihrem aktuellen Verzeichnis (.
) zu wechseln.
Beachten Sie, dass Sie Zeit und Mühe gespart haben, da Sie den vollständigen Pfad des C:\Users\admin-Verzeichnisses nicht angeben mussten.

Das Navigieren im Dateisystem mit PowerShell-Cmdlets
Obwohl der cd
-Befehl zweifellos in PowerShell funktioniert, hat Microsoft viele Cmdlets eingeführt, wie Set-Location
, mit denen Sie durch Ihr Dateisystem navigieren können.
Diese Cmdlets bieten robustere Funktionen als der cd
-Befehl, den Sie verwenden können, um zwischen Laufwerken zu wechseln, gestapelte Positionen zu navigieren und durch Verzeichnisse in der Verlaufshistorie zu wechseln.
Bleiben Sie dran und erleben Sie, wie leistungsstark PowerShell-Cmdlets beim Navigieren durch Ihr Dateisystem sind.
Festlegen eines Speicherorts von einem anderen Laufwerk
Wie der cd
-Befehl ermöglicht es Ihnen das Set-Location
-Cmdlet, von einem Verzeichnis zu einem anderen zu wechseln und direkt zu einem seiner Verzeichnisse zu navigieren. Da Sie jedoch ein PowerShell-Cmdlet verwenden, müssen Sie den -Path
-Parameter anhängen, um den Pfad Ihres Zielorts festzulegen.
Das Set-Location
-Cmdlet legt das aktuelle Arbeitsverzeichnis auf einen angegebenen Ort fest. Dieser angegebene Ort kann einer der folgenden sein:
- A directory, or subdirectory on the local file system.
- Ein beliebiger anderer Ort, der von einem Anbieter in PowerShell unterstützt wird.
- Oder ein Registrierungsort.
Um zu sehen, wie das Set-Location
-Cmdlet funktioniert, um Ihr Dateisystem zu navigieren:
Führen Sie den untenstehenden Befehl aus, um zum Verzeichnis Kitty
auf Ihrem D:
-Laufwerk zu navigieren, das im -Path
-Parameter angegeben ist.

Wenn Sie sich ein wenig faul fühlen, den vollständigen
Set-Location
-Befehl zu tippen, können Sie auch eine seiner Aliases verwenden, wie z. B.chdir
undsl
, um Ihr Dateisystem zu navigieren. Aliases bieten eine bequemere Möglichkeit, häufig verwendete Befehle aufzurufen.
Führen Sie nun den untenstehenden Befehl aus, um den Arbeitsort auf einen bestimmten Registrierungsort festzulegen. In diesem Fall bezieht sich der Pfad HKLM:\
(eine Abkürzung) auf den HKEY_LOCAL_MACHINE-Hive in Ihrer Windows-Registrierung.
Dieser Befehl setzt den Arbeitsort auf den Stamm des HKEY_LOCAL_MACHINE-Hives in der Registrierung. Durch das Navigieren zu einer Registrierung können Sie über andere PowerShell-Befehle auf deren Unterschlüssel und Werte zugreifen und diese ändern.

Zwischen gestapelten Orten wechseln (Push und Pop)
Der schnelle Zugriff auf gestapelte Orte klingt praktisch. Aber ist das möglich? Ja! Die Befehle Push-Location
und Pop-Location
ermöglichen das Hinzufügen und Entfernen von Orten in einer Last-In-First-Out (LIFO)-Reihenfolge von einem benannten Stapel.
Um gestapelte Orte zu navigieren, befolgen Sie diese Schritte:
1. Führen Sie den folgenden Befehl Push-Location
aus, um Ihren aktuellen Ort auf einen Stapel namens Paths
zu setzen und das Verzeichnis C:\Program Files\PowerShell\
als aktuelles Verzeichnis festzulegen.

2. Führen Sie anschließend den folgenden Befehl aus, um Ihren aktuellen Ort (C:\Program Files\PowerShell\) auf den obersten Platz desselben Paths
-Stapels zu setzen.

3. Führen Sie jeden der folgenden Befehle aus, um Paths
als standardmäßigen Stapel festzulegen und die gestapelten Orte anzuzeigen (Get-Location
).
Unten sehen Sie, dass Sie derzeit zwei gestapelte Positionen haben, wobei die zuletzt verschobene Position oben ist.

4. Führen Sie nun den folgenden Befehl Pop-Location
zweimal aus, um die oberste gestapelte Position vom Standardstapel zu entfernen, der derzeit der Paths-Stapel ist.

Beachten Sie, dass das Entfernen der Position aus dem Stapel die Position aus dem Stapel entfernt. Der unten stehende Fehler zeigt an, dass Sie alle gestapelten Positionen aus dem Standardstapel entfernt haben.

Navigieren zu einem in einer Variable gespeicherten Verzeichnis
Sie haben verschiedene Möglichkeiten durchlaufen, um Verzeichnisse in Ihrem Dateisystem zu durchsuchen. Aber was ist, wenn Sie häufig zu einem bestimmten Speicherort wechseln müssen? Das mehrfache Eintippen vollständiger Pfade oder das Durchlaufen des Verlaufes kann mühsam sein. Warum nicht stattdessen den vollständigen Pfad eines Verzeichnisses in einer Variable speichern?
Mit einer deklarierten Variable können Sie zu Ihrem Zielverzeichnis navigieren, ohne den Pfad auswendig zu wissen.
1. Führen Sie die unten stehenden Befehle aus, um das Verzeichnis C:\Program Files\PowerShell\
in der Variable $psh
zu speichern, und setzen Sie diesen Ort ($psh
) als aktuelles Verzeichnis.
Die unten stehende Ausgabe bestätigt eine erfolgreiche Änderung des Verzeichnisses mithilfe einer Variable. Unabhängig von Ihrem aktuellen Verzeichnis können Sie schnell zum Verzeichnis C:\Program Files\PowerShell\ über die Variable $psh
navigieren.
Aber beachten Sie, dass diese Methode nur für die aktuelle PowerShell-Sitzung funktioniert, es sei denn, Sie persistieren die Variable, wie im folgenden Schritt gezeigt.

2. Führen Sie als nächstes die folgenden Befehle aus, die keine Ausgabe liefern, aber die Variable ev_psh
als Umgebungsvariable (SetEnvironmentVariable
) mit dem Wert des vollständigen Pfads des Verzeichnisses persistieren.
3. Führen Sie abschließend den folgenden Befehl aus, um den Wert aus der Umgebungsvariable ev_psh
als das aktuelle Verzeichnis festzulegen. Stellen Sie sicher, dass Sie sich in einem anderen Verzeichnis befinden als dem in Ihrer ev_psh
Variablen.

Durchlaufen von Verzeichnissen in der Verlaufshistorie des PowerShell-Standorts
Ein weiterer schneller Weg, um durch Verzeichnisse in PowerShell zu navigieren, ist die Verwendung der Verlaufshistorie. Der -Path
-Parameter teilt dem Set-Location
-Cmdlet mit, in ein anderes Verzeichnis aus der Verlaufshistorie (vorheriges und folgendes) zu navigieren, abhängig vom angegebenen Wert (-
oder +
).
Um durch Verzeichnisse in der Verlaufshistorie des PowerShell-Standorts zu navigieren:
Führen Sie die folgenden Befehle aus, um die Standorte aus dem Verlauf als das aktuelle Verzeichnis festzulegen. Das Zeichen +
führt Sie im Verlauf der Standorte vorwärts, während das Zeichen -
Sie zurückführt.

Conclusion
Die Navigation im Dateisystem kann knifflig sein, wenn Ihre Optionen begrenzt sind. Aber mit PowerShell-Wechselverzeichnisbefehlen wie Set-Location
haben Sie viele Möglichkeiten. Wie Sie Ihr Dateisystem effizienter navigieren möchten, liegt ganz bei Ihnen.
Zusätzlich ist es wichtig, den Gebrauch von Push-Location
und Pop-Location
zu beherrschen, um kürzlich verwendete Standorte zu speichern und abzurufen.
Diese Techniken ermöglichen es Ihnen, schnell und nahtlos durch Verzeichnisse und Orte in PowerShell zu navigieren. Aber um weiter zu verbessern, warum nicht darüber nachdenken, zusätzliche Befehle zu lernen, wie z.B. Get-ChildItem, die Ihnen viel Zeit bei Ihren täglichen Aufgaben sparen können?
Source:
https://adamtheautomator.com/powershell-change-directory/