
Windows 탐색기에 다음과 같은 폴더가 열려 있다고 가정해 보겠습니다.
키보드 단축키나 Alteast를 사용하여 마우스 오른쪽 버튼을 클릭하고 팝업 메뉴에서 옵션을 선택하여 Cygwin 터미널을 직접 열 수 있기를 원합니다. 또한 특정 디렉터리에서 이런 방식으로 MinGW, PowerShell 또는 Windows 명령 터미널을 열어야 하는 경우가 많습니다.
지금은 터미널을 연 다음 경로를 복사하여 붙여넣고 CD 명령을 사용하여 디렉토리를 변경합니다. 하지만 우리가 수십 년 동안 매일 수십 번씩 이 일을 해야 할 때, 이 일을 더 빨리 할 수 있는 방법이 분명히 있을 것이라고 확신합니다.
참고로 저는 Windows 10을 사용하고 있으며 곧 Windows 11로 전환할 예정입니다.
답변1
폴더 배경 상황에 맞는 메뉴는 HKEY_CLASSES_ROOT\Directory\background\shell
레지스트리 키로 제어됩니다. 예를 들어 "Visual Studio로 열기" 항목은 AnyCode
하위 키로 제어됩니다.
명령 프롬프트 및 PowerShell
Windows 10에는 이미 cmd.exe
및 항목이 있지만 powershell.exe
기본적으로 숨겨져 있습니다. Shift폴더 창의 배경을 마우스 오른쪽 버튼으로 클릭하는 동안 키를 누르고 있으면 PowerShell을 표시할 수 있습니다 . 해당 값을 사용하여 PowerShell을 설치하면 명령 프롬프트가 숨겨집니다 HideBasedOnVelocityId
.
길게 누르지 않고도 폴더 배경 컨텍스트 메뉴에 항상 명령 프롬프트 및 PowerShell을 표시하려면 다음을 수행합니다 Shift.
- 자신에게 키 수정 권한을 부여하세요
shell
.- 레지스트리 편집기에서 키를 마우스 오른쪽 버튼으로 클릭합니다.
- 권한 > 고급을 선택합니다.
- 소유자를 로 변경하고
Administrators
"하위 컨테이너 및 개체의 소유자 바꾸기"와 "모든 하위 개체 권한 항목을 이 개체의 상속 가능한 권한 항목으로 바꾸기"를 모두 선택합니다. - 확인을 클릭하여 권한 대화 상자를 닫습니다.
cmd
및 하위 키 모두에서 , 및 값을PowerShell
삭제하거나 이름을 바꿉니다 .Extended
HideBasedOnVelocityId
ShowBasedOnVelocityId
이제 폴더 배경을 마우스 오른쪽 버튼으로 클릭하면 상황에 맞는 메뉴에 "여기서 명령 창 열기" 및 "여기서 PowerShell 창 열기"가 표시됩니다.
새로운 항목
폴더 배경 상황에 맞는 메뉴에 새 항목을 추가하려면 HKEY_CLASSES_ROOT\Directory\background\shell
레지스트리 키에 새 키를 생성하면 됩니다.
- 새 키의 이름은 원하는 고유한 이름일 수 있으며 UI에는 표시되지 않습니다.
- 상황에 맞는 메뉴 항목의 텍스트 레이블은
(Default)
키 값에 의해 제어됩니다. - 항목의 선택적 아이콘은
Icon
하위 키의 문자열 값으로 제어됩니다. 이는 ICO 파일의 파일 이름이거나 쉼표로 구분된 선택적 숫자 ID가 있는 PE 파일(DLL/EXE)일 수 있습니다. 인덱스는 PE 파일에 있는 아이콘의 0 기반 인덱스에 대해 음수가 아니거나 리소스 ID에 대해 음수가 될 수 있습니다. - 항목을 클릭할 때 실행되는 프로그램과 인수는 하위 키
(Default)
값 에 의해 제어됩니다command
.%V
현재 디렉터리를 나타내기 위해 자리 표시자 변수를 사용합니다 .
MinGW 배시 예시
Windows용 Git의 일부로 MinGW Bash를 설치했습니다. .reg
내 폴더 배경 컨텍스트 메뉴에 추가하는 파일 은 다음과 같습니다 . 설치 디렉터리는 다를 수 있습니다.
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\""
Windows는 기본적으로 ( 키에 값이 존재 %V
하지 않는 한) 폴더를 새 프로세스의 작업 디렉터리로 사용하여 프로세스를 시작하기 때문에 명령이 를 사용하지 않더라도 지정된 폴더에서 Bash를 엽니다 .NoWorkingDirectory
더 이상 Cygwin을 설치하지 않았지만 비슷한 방식으로 Bash에 대한 메뉴 항목을 추가할 수 있습니다.
Windows 11에는 "터미널에서 열기" 항목이 항상 해당 메뉴에 표시되지만 사용자 지정하기가 더 어렵습니다.