[python] python 파일 cmd 창에 등록하여 쓰기

2017. 8. 31. 02:50언어별 정리 자료/Python

[python] python 파일 cmd 창에 등록하여 쓰기


cmd 창에 "cls" 같은 것을 입력하면, 그 입력한 것에 맞는 실행 파일(exe 파일)을 System 변수에 등록 된 곳에서 찾아서 실행 해 준다. 리눅스에서는 그런 파일을 지정하기 쉬웠는데, 그에비해 윈도우에서는 그런 기능이 조금 약한것 같아 아쉬웠다. 아쉬운건 아쉬운대로 cmd 창에서 나만의 명령어를 쓰기 위해서 python을 이용 해 보고 있다. 


python을 cd를 이용해 파일이 있는 폴더에 가서 실행하는 것은 불편하다. doskey( 후에 포스팅 할 예정인 윈도우의 alais 친구이다. ) 로 지정을 해 두더라도 batch 파일을 따로 작성하고, 시스템 폴더에 넣는 등의 번거로운 작업을 해야 하며, 생각만큼 강력한 친구는 아니다. 따라서 나는 exe 파일로 만든 뒤, 그 파일을 모아둔 디렉토리를 환경변수에 추가하는 과정을 통해 진행하기로 한다.


자신의 환경 변수가 궁금한 사람은 아래의 그림의 순서대로 진행 해 보자. 아래의 그림은 내 컴퓨터( 혹은 파일 탐색기 좌측에 있는 "내 PC"라는  )를 우클릭 한 뒤, 속성을 누르면 나온다.


[ 사진 1 - 환경 변수 설명 : 환경 변수는 우리가 cmd 창에 입력하는 exe, 실행 파일들의 위치를 적어두는 곳이다. 위에서부터 차례대로 읽어서 내려오므로 우리는 맨 뒤에 추가하는 식으로 진행한다. ]


파이썬 2.0 버전에서는 py2exe라는 좋은 tool로 파이썬 코드를 쉽게 exe로 바꾸어 실행파일로 만들고, 윈도우 환경변수에 추가하여 cmd 창에서 쉽게 쓸 수 있었다. 그러나 파이썬 3.0 버전으로 들어와선 그런 도구가 없었나 궁금했다. 그러던 중, 아래 블로그 글을 읽게 되었다.


간단하게 설명하면 cx_freeze라는 파이썬 모듈을 설치하면 된다. 이 모듈은 파이썬 코드를 exe 파일로 컴파일 해 주는 모듈인데, 용량이 조금 커지니 주의할 것! ( 72줄짜리 코드가 9메가짜리 폴더로 변환되었다. 필요 없는 것들까지 한 번에 만들어져서 그런 것 같다. )



간단하게 pip로 cx_freeze 모듈을 받아주자.


pip install cx_freeze

혹은 리눅스 사용자들은 sudo 를 붙여서, pip3 를 통해 받아주자. 이는 python3 모듈이다. ( 생각해보니 리눅스는 exe 파일을 만들지 않는구나... 난 헛똑똑이다 ㅋㅋ... )

sudo pip install cx_freeze



설치가 완료되었다면, Setup.py 를 만들어서 build를 실행하면 된다.

[ 사진 2 - Setup.py 파일 설명 ]


이를 간단하게 말하자면 다음과 같다.


  • name : 만들어질 exe 파일의 이름.
  • version : 버전, 자신이 지정 가능하다.
  • description : 파일의 설명.
  • author : 제작자
  • executables : 만들고 싶은 python 파일들의 list이다. 여러개면 Executable("a.py"), Excutable("b.py") 같이 하자. ( 사실 필자도 해보지 못했다. 후에 수정. )

이후엔 Setup.py 가 만들어진 폴더로 이동하여 cmd 창을 켜 주자. 그 후 다음과 같이 입력하자.

python Setup.py build

여러가지 글이 써 진 뒤에 exe 파일이 build 폴더에 만들어져 있을 것이다. 그 폴더의 링크를 복사해서 환경변수에 추가 한 다음 ( 이 과정은 JAVA_HOME을 만드는 과정과 동일하다. ), cmd 창에서 exe 파일 이름을 치게되면 자신의 python 프로그램을 cmd 창에서 실행 가능하다.

맨 위의 사진 1대로 따라온다면 다음과 같은 화면을 보게 될 것이다.

[ 사진 3 - 환경 변수 창, 참고로 필자는 윈도우 10 환경을 쓰고 있다. ]


시스템 변수에 있는 Path를 더블 클릭하자. 그 후, 여러가지 디렉토리들이 있을 것이다. 우리가 만든 exe가 있는 폴더를 복사하여 왼쪽 맨 위에 있는 새로 만들기를 눌르고 그 곳에 붙여넣기 한 다음, 확인을 눌러 빠져나오자.


[ 사진 4 - 여기다 저장하시오. 필자는 workspace 폴더에 있는 diary-ver1.0 폴더를 추가했다. ]


이제 cmd창에 diary만 입력해도, diary.exe를 workspace\diary-ver1.0 폴더에서 자동으로 찾아서 실행 해 준다. 재미있는 시도였다. cmd 창에서 더 좋은 일기장 만들기 프로젝트를 해보는 것도 좋을 것 같다.

[ 사진 5 - 내가 만든 일기장이다. 밤이라 그런가 라면이 먹고싶다. ]







참조한 블로그 

========================================