python 실행파일로 실행하기
2019. 8. 6. 23:09ㆍPL/Python
보통 python 소스파일을 수행하려면 다음 명령어를 수행해야만 한다
$ python 소스파일
하지만 실행파일 권한을 줘서 바로 실행시킬 수 있는데 이를 가능케 하기 위해서는 Shebang('#!/')으로 시작해야 가능하다. 유닉스 시스템에서 Shebang이 있는 스크립트는 프로그램으로서 실행되며, 프로그램 로더가 스크립트의 첫 줄의 나머지 부분을 인터프리터 지시자로 구문 분석한다. 즉, 지정된 인터프리터 프로그램이 대신 실행되어 스크립트의 실행을 시도할 때 처음 사용되었던 경로를 인수로서 넘겨주게 된다
$ chmod +x 소스파일
$ ./소스파일
이때 bad interpreter 에러가 난다면 원격 OS인 윈도우에서 파일을 작성해서 그런 것이다. MS 윈도우에서는 EOL인 문장의 끝을 CR(\r)과 LF(\n)을 사용하지만, 리눅스에서는 LF로만 표현한다. 리눅스는 MS 형식의 파일을 저장할 때 행의 마지막에 ^M(Ctrl + M)을 추가하여 CR+LF가 라인의 끝이라는 것을 표시한다
따라서 리눅스 시스템에 맞춰 CR을 제거해야 하는데, 이때 사용하는 것이 sed(Stream Editor) 명령어다
$ sed -i "s/\r//" ./소스파일
sed 명령어는 vim에서 치환명령과 유사한데, \r을 다음 문자로 치환하는 것인데, 지금은 아무것도 없으므로 삭제하라는 명령이다
'PL > Python' 카테고리의 다른 글
Atom에서 파이썬 인터프리터 실행하기 (0) | 2019.08.15 |
---|---|
if __name__ == "__main__" (0) | 2019.08.07 |
랜덤 숫자 맞추기 python (0) | 2019.08.04 |
python3에서 나누기 주의사항 (0) | 2019.08.04 |
python 256과 257 (0) | 2019.08.04 |