Öffnen Sie Cygwin/MinGW/PowerShell/Cmd im aktuellen Ordner, der im Windows Explorer geöffnet ist.

Öffnen Sie Cygwin/MinGW/PowerShell/Cmd im aktuellen Ordner, der im Windows Explorer geöffnet ist.

Nehmen wir an, ich habe im Windows Explorer einen Ordner wie diesen geöffnet:

Bildbeschreibung hier eingeben

Ich möchte, dass ich hier direkt ein Cygwin-Terminal öffnen kann, indem ich eine Tastenkombination verwende oder alternativ mit der rechten Maustaste klicke und im Popup-Menü eine Option auswähle, die dies ermöglicht. Ich muss MinGW, PowerShell oder Windows Command Terminal auf diese Weise auch oft in einem bestimmten Verzeichnis öffnen.

Im Moment öffne ich das Terminal, kopiere und füge den Pfad ein und ändere das Verzeichnis mit dem Befehl CD. Aber ich bin sicher, dass es einen schnelleren Weg geben muss, wenn wir das jahrzehntelang täglich Dutzende Male machen müssen.

Ich verwende übrigens Windows 10 und werde wahrscheinlich bald auf Windows 11 umsteigen.

Antwort1

Das Kontextmenü des Ordnerhintergrunds wird durch den HKEY_CLASSES_ROOT\Directory\background\shellRegistrierungsschlüssel gesteuert. Beispielsweise wird der Eintrag „Mit Visual Studio öffnen“ durch den AnyCodeUnterschlüssel gesteuert.

Eingabeaufforderung und PowerShell

Windows 10 hat bereits Einträge für cmd.exeund powershell.exe, diese sind jedoch standardmäßig ausgeblendet. Sie können den PowerShell-Eintrag anzeigen, indem Sie die ShiftTaste gedrückt halten und gleichzeitig mit der rechten Maustaste auf den Hintergrund des Ordnerfensters klicken. Die Eingabeaufforderung ist ausgeblendet, wenn PowerShell mit dem Wert installiert wird HideBasedOnVelocityId.

Um die Eingabeaufforderung und PowerShell immer im Kontextmenü des Ordnerhintergrunds anzuzeigen, ohne dass Sie Folgendes gedrückt halten müssen Shift:

  1. Erteilen Sie sich selbst die Berechtigung, den shellSchlüssel zu ändern.
    1. Klicken Sie mit der rechten Maustaste auf den Schlüssel im Registrierungs-Editor.
    2. Wählen Sie Berechtigungen > Erweitert.
    3. Ändern Sie den Besitzer in Administratorsund aktivieren Sie sowohl „Besitzer für untergeordnete Container und Objekte ersetzen“ als auch „Alle Berechtigungseinträge für untergeordnete Objekte durch vererbbare Berechtigungseinträge von diesem Objekt ersetzen“.
    4. Klicken Sie auf „OK“, um das Dialogfeld „Berechtigungen“ zu schließen.
  2. Löschen Sie in den cmdUnterschlüsseln und die Werte , , und oder benennen Sie sie um .PowerShellExtendedHideBasedOnVelocityIdShowBasedOnVelocityId

immer cmd anzeigen

Wenn Sie jetzt mit der rechten Maustaste auf den Hintergrund eines Ordners klicken, sollten Sie im Kontextmenü „Eingabeaufforderung hier öffnen“ und „PowerShell-Fenster hier öffnen“ sehen.

Neue Einträge

Um dem Kontextmenü des Ordnerhintergrunds neue Einträge hinzuzufügen, können Sie im HKEY_CLASSES_ROOT\Directory\background\shellRegistrierungsschlüssel neue Schlüssel erstellen.

  • Der Name des neuen Schlüssels kann ein beliebiger eindeutiger Name sein; er wird nicht in der Benutzeroberfläche angezeigt.
  • Die Textbeschriftung des Kontextmenüeintrags wird durch den (Default)Wert im Schlüssel gesteuert.
  • Das optionale Symbol des Eintrags wird durch den IconZeichenfolgenwert im Unterschlüssel gesteuert. Es kann der Dateiname einer ICO-Datei oder einer PE-Datei (DLL/EXE) mit einer optionalen numerischen ID sein, die durch ein Komma getrennt ist. Der Index kann für den 0-basierten Index des Symbols in der PE-Datei nicht negativ oder für die Ressourcen-ID negativ sein.
  • Das Programm und die Argumente, die ausgeführt werden, wenn Sie auf den Eintrag klicken, werden durch den (Default)Wert des commandUnterschlüssels gesteuert. Er verwendet die %VPlatzhaltervariable, um das aktuelle Verzeichnis darzustellen.

MinGW Bash-Beispiel

Ich habe MinGW Bash als Teil von Git für Windows installiert. Hier ist eine .regDatei, die es zu meinem Kontextmenü im Ordnerhintergrund hinzufügt. Ihr Installationsverzeichnis wird wahrscheinlich anders sein.

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\Directory\Background\shell\bash]
@="Open in Bash"
"Icon"="C:\\Programs\\Development\\Git\\mingw64\\share\\git\\git-for-windows.ico"

[HKEY_CLASSES_ROOT\Directory\Background\shell\bash\command]
@="\"C:\\Programs\\Development\\Git\\bin\\bash.exe\""

Dadurch wird Bash im angegebenen Ordner geöffnet, auch wenn der Befehl nicht verwendet %V, da Windows den Prozess standardmäßig mit dem Ordner als Arbeitsverzeichnis des neuen Prozesses startet (es sei denn, NoWorkingDirectoryim Schlüssel ist ein Wert vorhanden).

Bash im Ordnerkontextmenü

Ich habe Cygwin nicht mehr installiert, aber ein Menüeintrag für dessen Bash kann höchstwahrscheinlich auf ähnliche Weise hinzugefügt werden.

In Windows 11 ist im entsprechenden Menü immer ein Eintrag „Im Terminal öffnen“ sichtbar, der jedoch schwieriger anzupassen ist.

verwandte Informationen