티스토리 뷰

윈도우 로고

HowTo - Windows 10에서 내부 또는 외부 명령으로 인식되지 않는 문제 해결하기

 Windows 명령 프롬프트에서 명령어를 실행할 때 간혹 "내부 또는 외부 명령, 실행할 수 있는 프로그램, 또는 배치 파일이 아닙니다."라는 오류가 발생할 수 있습니다. 이러한 오류는 명령 프롬프트에서 가장 일반적인 오류 중 하나로 실제 실행할 수 있는 명령어가 아니거나 시스템 문제로 정상적인 명령이 실행 되지 않을 때 발생할 수 있습니다.

 

내부 또는 외부 명령이 아닙니다.

 일반적으로 시스템에 프로그램이 설치되어 있지 않기 때문이며, 설치 프로그램이 적절한 위치에 응용 프로그램 파일을 설치하지 않았거나 설치 프로그램이 명령 프롬프트를 사용하여 실행할 수 없도록 설정되어 있을 수 있습니다.

 

 특히 시스템에 별도로 설치 과정을 거치지 않고 사용하는 프로그램인 경우, 예를 들어 ADB, ffmpeg 등 별도로 설치 과정 없이 사용할 수 있는 프로그램을 사용할 때 흔히 마주하게 됩니다.

 

 또 다른 원인으로 설치된 다른 프로그램이 시스템 변수를 수정했기 때문입니다. 사용자가 실행하려는 실행 파일 위치 정보를 찾을 수 없도록 환경 변수를 수정한 경우 명령 프롬프트에서 절대 경로를 입력하기 전까지는 작업을 수행할 수 없으며, 내부 또는 외부 명령으로 인식되지 않는 오류가 나타날 수 있습니다.

Windows "내부 또는 외부 명령으로 인식되지 않음" 오류 수정

 가장 먼저 확인할 것은 명령 프롬프트와 함께 사용하려는 프로그램이 컴퓨터에 실제로 설치되었는지, 실행 파일이 존재하는지 확인하는 것입니다. 프로그램이 컴퓨터에 정상적으로 설치되지 않을 때 이러한 오류가 나타날 수 있습니다.

 

 

 

1 프로그램이 실제로 존재하는지 확인

 프로그램이 실제로 컴퓨터에 존재하는지 확인하는 쉬운 방법은 다음과 같습니다.

 

System32 폴더

 PC에서 단축키 Win + E 키를 눌러 파일 탐색기를 열고 다음 경로로 이동합니다.

 

C:\Windows\System32

 명령 프롬프트에서 실행하려는 실행 파일이 해당 폴더에서 사용 가능한지 확인합니다. 그렇지 않은 경우 프로그램이 컴퓨터에 설치되지 않았을 수도 있습니다.

 

 물론 위 방법이 컴퓨터에 프로그램이 정상적으로 설치되었는지 확인하는 확실한 방법은 아닙니다. 모든 프로그램이 'System32' 폴더에 파일을 보관하는 것은 아니기 때문입니다. 그러나 대부분의 프로그램을 찾는 방법이 될 수 있습니다.

 

 만약 별도의 설치 마법사를 통해 설치 과정(Installation)을 진행하지 않은 프로그램인 경우 사용자가 다운로드한 위치에 실행 파일이 존재하므로, 해당 경로가 시스템 환경 변수에 포함되어 있는지 확인하는 것이 좋습니다.

 

 

2 실행 파일의 전체 경로(절대 경로) 사용

 "내부 또는 외부 명령이 아닙니다" 오류는 일반적으로 컴퓨터가 실행을 요청하는 실행 파일을 찾을 수 없기 때문에 발생합니다. 따라서 명령 프롬프트에서 실행 파일의 절대 경로를 함께 입력하여 실행하면 문제 없이 실행할 수 있습니다.

 

실행 파일 위치 이동

 예를 들어 System32 폴더에 실행 파일이 존재하지만, 명령 프롬프트에서 실행 파일 명령만 입력했을 때 오류가 발생한다면 해당 경로로 이동하여 실행할 수도 있습니다.

 

cd C:\Windows\System32

 

위치 이동 및 실행 파일 수행

 'CD' 명령어로 실행 파일이 존재하는 위치로 이동한 뒤 실행 파일을 입력 또는 실행 파일의 전체 경로를 입력하고 키보드 Enter 키를 누릅니다. 예를 들어 ADB 도구를 기본 다운로드 폴더에 그대로 저장했다면 다음과 같이 해당 경로로 이동하여 실행하거나, 절대 경로를 입력하여 실행할 수 있습니다.

 

> cd C:\Users\HashTag\Downloads\platform-tools
> adb

 

실행 파일 절대 경로 입력

> C:\Users\HashTag\Downloads\platform-tools\adb

 

공백 포함 시 큰 따옴표 삽입

 만약 실행 파일 절대 경로에 공백이 있을 경우 동일하게 "내부 또는 외부 명령이 아닙니다" 오류 메시지가 나타날 수 있습니다. 공백을 인식하지 못하고 첫 번째 공백까지의 문자를 프로그램 이름으로 사용하기 때문입니다.

 

 따라서 이경우 전체 경로를 입력할 때 경로는 큰 따옴표(")로 묶어서 다음과 같이 사용합니다.

 

> "C:\Users\HashTag\Downloads\platform-tools\adb"

 

3 파일을 System32 폴더로 이동

 실행 파일과 연결된 다른 모든 파일을 컴퓨터의 'System32' 폴더에 복사하여 사용할 수도 있습니다.

 

System32 폴더로 복사 및 붙여넣기

 다만 해당 방법은 신중하게 사용할 필요가 있습니다. 명령 프롬프트에서 무엇인가 사용할 때마다 실행 파일을 System32 폴더에 넣어야 하기 때문입니다. 또한 특정 디렉토리에 설치해야 하는 실행 도구는 정상적으로 동작하지 않습니다. 설치 경로는 Windows 레지스트리에 정의되므로 System32 폴더로 이동할 수 없기 때문입니다.

 

 다른 방법으로 문제를 해결할 수 없고 프로그램에 설치가 필요하지 않은 경우에만 신중하게 사용하는 것이 좋습니다.

 

 

4 시스템 환경 변수에 경로 추가

 명령 프롬프트에서 "내부 또는 외부 명령이 아닙니다" 오류를 가장 쉽고 효율적으로 해결할 수 있는 방법은 시스템의 환경 변수를 편집하고 파일 경로를 추가하는 것입니다. 이는 명령 프롬프트에서 현재 경로가 어디에 있던지 해당 실행 파일을 실행할 수 있기 때문입니다.

 

 시스템 환경 변수에 추가하면 명령 프롬프트에서 예를 들어 'ADB' 실행 파일 이름만 입력하여 사용하고 싶을 때 자동으로 특정 실행 파일이 있는 위치를 명령 프롬프트에 알릴 수 있기 때문입니다. 따라서 'C:\Users\Hashtag\Downloads\platform-tools\adb'로 실행해야 할 명령어를 단순히 'adb' 입력만으로도 실행할 수 있습니다.

 

시스템 환경 변수 편집

 윈도우 시작 버튼 또는 단축키 Win + S 키를 누르고 "시스템 환경 변수 편집" 검색 후 앱을 실행합니다.

 

환경 변수

 시스템 속성 창에서 [고급] 탭을 선택한 다음 [환경 변수(N)] 버튼을 클릭합니다. 먼저 그전에 환경 변수에 추가하려는 실행 파일의 전체 경로를 복사해둡니다.

 

변수 Path 편집

 환경 변수 창에서 현재 접속된 '계정에 대한 사용자 변수(U)' 목록에서 "Path" 변수를 선택하고 [편집(E)] 버튼을 클릭합니다.

 

환경 변수 새로 만들기

 등록하려는 실행 파일 경로를 복사하지 않았거나 정확히 기억하지 못한다면 [찾아보기(B)] 버튼을 클릭하여 명령 프롬프트에서 전체 경로 없이 실행하려는 응용 프로그램의 경로를 찾아서 추가합니다.

 

 만약 사전에 전체 경로를 복사해뒀거나 기억한다면 [새로 만들기(N)] 버튼을 클릭하고 해당 경로를 등록한 다음 [확인] 버튼을 클릭합니다.

 

 이제 명령 프롬프트 창을 열고 실행 파일 이름만 입력해도 오류가 발생하지 않고 어떤 위치, 어떤 폴더 경로에 있던 간에 명령어를 실행할 수 있습니다.

댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/04   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
글 보관함