CMD란 ?
일반적으로 프로그램은 화면을 보며 선택하는 GUI(Graphical User Interface)로 되어 있다.
하지만 명령어를 사용하여 프로그램을 실행하는 방식도 있는데, 이런 방식을 CLI(Command Line Interface)혹은 명령행 인터페이스라고 한다.
명령은 사용자가 이렇게 CLI 형태로 컴퓨터와 대화하는 프로그램이 cmd.exe 이다.
command line의 약자로 명령어 처리기 또는 명령어 프롬프트 등으로 부르기도 한다.
C:\Users\hyemi> python hello.py
텍스트를 통해 컴퓨터를 조작하는 프로그램을 말한다.

파이썬의 cmd 모듈
파이썬에는 cmd라는 내장 모듈이 존재한다.
간단하게 커맨드 인터페이스 프로그램을 손쉽게 만들수 있는 도구이다.
import cmd
class MyShell(cmd.Cmd):
prompt = '>> '
def do_hello(self, line):
print("안녕!")
def do_exit(self, line):
print("종료합니다.")
return True
MyShell().cmdloop()
아래와 같이 간단한 대화형 CLI를 만들 수 있다.
>> hello
안녕!
>> exit
종료합니다.
환경변수 PATH
환경변수 : OS가 프로그램의 실행, 경로 처리, 설정 정보 등을 저장하는 전역변수.
환경변수는 시스템 전체 또는 사용자 세션에서 사용할 수 있고, 그 중 가장 많이 쓰는게 PATH.
PATH : 명령어를 사용할 때 OS가 어디에서 프로그램을 실행할지 알려주는 경로의 목록.
예를들어 python.exe 프로그램은 C:\\Python 에 있다고 가정하면 , 이 프로그램을 실행하기 위해서는 C:\\Python\\python.exe 를 실행해야한다.
경로를 매번 다르게 입력하기 힘들고, 번거로움이 생길 수 있다.
이럴때 PATH를 등록하여 전체 경로대신 프로그램이나 명령만 입력해도 PATH에 등록된 디렉토리 목록에서 경로를 확인하여 해당 프로그램을 실행한다.
즉, 환경변수 PATH에 등록된 디렉토리가 있는 프로그램은 전체 경로 없이 프로그램의 이름만 입력하여도 실행할 수 있다.
python hello.py
위의 실행 명령어를 통해 구동되는 원리를 파악해보자.
1.운영체제가 먼저 환경변수 디렉토리들을 찾아 python의 경로를 찾는다.(C:\\Python\\python.exe)
2.실행 파일을 찾은 운영체제는 인자로 hello.py를 넘긴다.
python <파일 경로>
3.현재의 디렉토리내의 hello.py를 찾는다. 열어 실행한다.