Security_Analysis

Windows10 마우스 우클릭 '여기서 명령창 열기' (cmd.exe) 본문

Operating System/Windows

Windows10 마우스 우클릭 '여기서 명령창 열기' (cmd.exe)

Positivie 2020. 5. 19. 11:02
728x90
반응형

Windows10 이 많이 보안적으로 강화되고, 사용빈도가 높아짐에 따라서 많은 사람들이 Windows10을 사용한다.

대부분의 작업들을 GUI로 하기 때문에 이 포스팅의 주제인 "여기서 명령창 열기" 라는 기능이 많이 쓰이지 않겠지만, 일부 작업들이나 컴퓨터 관련일들을 하다보면 "도스 창"이라고 부르는 명령 프롬프트(cmd)로 작업하는게 더 편한 것들이 아직 존재한다. 

 

시스템 환경변수(Path)에 등록해놓으면 win+ r 키를 이용하여 실행창을 통해 cmd를 실행시켜서 사용하곤 한다. 

왼쪽 <Win + r> / 오른쪽 <cmd.exe>

하지만, 시스템 환경변수(Path)에 등록되어있지않거나, 특정 Directory(Folder)에 접근하여 해당 Folder에 있는 프로그램을 실행하기 위해서는 cmd에서 cd명령을 통해 경로를 변경해주어야 한다. 

한 두번만 사용한다면 상관없겠지만, 자주 사용해야 하는 경우 경로를 변경해주는 일은 매우 귀찮고 번거로운 일이다.

 

이런 문제점을 해소하고자 Windows7 부터는 탐색기에서 Shift 키를 누른 상태에서 "마우스 오른쪽 클릭" 을 해보면 "여기서 명령창 열기" 메뉴 항목이 나오고, 이를 선택할 경우 cmd.exe 가 실행되었다.

 

그러나, Windows10 부터는 cmd.exe가 아닌 Windows Powershell 로 변경이 되었다. 

Powershell이나 cmd나 별반 차이가 없어서 불편한건 아지만 필자는 cmd가 더 편하기 때문에 기존 Powershell을 냅두고, Shift를 누르지 않은 상태에서 마우스 우클릭을 하였을 때 cmd를 실행시키고자 registry를 변경하였다. 

 

Windows10 마우스 우클릭 메뉴항목에서 CMD를 추가하기

cmd 를 추가하기 위해서는 "regedit" 라는 Windows 기존 내장 프로그램인 "레지스트리 편집기" 가 필요하다.

 

1. Win+ r 키를 이용하여 실행창을 실행시킨후 regedit 를 입력후 확인을 누른 후 "레지스트리 편집기"로 접근한다. 

 

레지스트리 편집기 진입 

2. 아래의 경로에 접근한다. 

 - HKEY_CLASSES_ROOT\Directory\Background\shell

 - HKEY_CLASSES_ROOT\Directory\Background\shell 경로 내부 

3. 아래의 경로에 접근한다. 

 - shell Direcotry 에서 마우스 우클릭을 하여 "새로 만들기 -> 키(K)" 를 선택하는 작업을 두번 반복한다.  

 - 새로운 Directory가 2개 추가 될 것이다. 

 - 첫번째는 runas / 두번째는 executedcmd 로 작성해준다.

왼쪽 < 새로운 키 값 추가 > / 오른쪽 <runas / executedcmd> 추가 완료 

4. runas executedcmd의 기본값의 값 데이터를 아래와 같이 변경해준다. 

 - runas : Run CMD(Administrator) in this Directory. 

 - executedcmd : Run CMD in this Directory.

 

위 < runas 기본 값 변경 > / 아래 < executedcmd 기본 값 변경 >

------------------------------------------------------------------------------------------------------------------------

 ※ 두개의 차이점이 과연 무엇일까?

    변경할 기본값만 보더라도 눈치 빠른 사람이라면 알 것이다. 

   - runas는 cmd를 관리자권한으로 실행하려는 것이고 executecmd는 일반권한으로 실행하려는 것이다. 

   - 두개가 필요없다면 원하는 것만 추가해주면 된다. 

     필자는 개발을 하다보면 일반 권한보다 관리자권한을 더 많이 쓰기에 두개 다 만들었다. 

------------------------------------------------------------------------------------------------------------------------

5. runas  executedcmd에서 마우스 우클릭하여 새로만들기를 통해  "문자열 값"을 넣어준다. 

 - 이름 : Icon

 - 값 데이터 : cmd.exe 

위< 새로만들기를 통한 문자열 값 추가> / 아래 < 추가한 값 이름 및 데이터 변경 >

6. runas  executedcmd에서 마우스 우클릭하여 새로만들기를 통해 " 키(K) " 를 추가한다. 

※ 5번 까지만 하더라도 마우스 우클릭을 하면 cmd.exe가 두개 보일 것이다.  하지만 이것은 마우스 우클릭 했을 때 GUI로 보일수만 있게 작업을 해놓은 것이고 실행이 되지는 않는다. 실행이 되기 위해서는 새로 키값을 추가해줘야 한다. 

 - 키 값 이름 : command

7. runas  executedcmd에 만든 새로운 키값(command)의 기본 값을 아래처럼 변경해준다. 

 - runas : cmd.exe /s /k pushD "%V"

 - executedcmd : cmd.exe

※ 왜 두개가 다른것일까?

 - 앞서 3번을 확인해보면 그 답이 나와있다.

 - cmd.exe를 하나만 필요로 하는 사용자일 경우 원하는 것을 작성해서 사용하면 된다.

 - runas는 Administroatr 권한 

 - executedcmd는 User 권한

 - User권한이라면 일반 win + r 을 통해서 cmd 입력하는 것처럼 cmd.exe 만 작성해도 된다. 

 - Administrator 권한일 경우 /s /k pushD "%V" 라는 옵션을 줘서 관리자 권한으로 실행하게 한다. 

 

8. 결과 확인 

실행 위치 : 로컬디스크(C) 

 - 위) C:\Windows\system32\cmd.exe 

 - 아래) 관리자: C:\Windows\system32\cmd.exe

 

 

이로써 기존에 win + r 을 사용하여 cmd를 실행시킨후 원하는 특정 경로로 cd 명령을 통해 경로를 이동하는 일은 없어졌고,

좀 더 편한방법이라 생각한다. 

728x90
반응형

'Operating System > Windows' 카테고리의 다른 글

Registry에 대해서  (0) 2020.06.11