Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
Tags
- 맛집
- UBIFS
- 파이썬
- 나이키
- 세종
- 트레이딩 봇
- freqtrade
- 리눅스
- 가상화폐
- 비트코인
- 에러
- CMAKE_CXX_COMPILER
- 암호화폐
- python3-venv
- 챗지피티
- ChatGPT
- Trading
- ubuntu
- 공유폴더
- No JVM
- bot
- python
- nandsim
- mount
- Linux
- 커피
- virtualbox
- 카페
- SNRKS
- 마운트
Archives
- Today
- Total
beauty in struggle
#!/usr/bin/env python3 (shebang) 설명; 있고 없고 차이 본문
728x90
SMALL
python 코드를 보다보면, 코드 시작부분에 아래와 같은 코드가 등장하는 것을 볼 수 있다.
#!/usr/bin/env python3
이런 코드 라인을 shebang(hash-bang)이라고 부르는데,
해당 script를 실행하는데 사용할 interpreter의 위치를 명시하는데 사용한다.
shebang으로 interpreter를 명시하지 않으면, 운영체제는 해당 파일이 어떤 script인지 알 수가 없다.
예를 들어, 아래와 같이 Hello!를 출력하는 python 스크립트 hello.py를 shebang 없이 작성했다.
print("Hello!")
실행권한을 설정하고 hello.py을 실행시키면,
chmod +x hello.py
./hello.py
아래와 같이 syntax error가 뜨는 것을 확인할 수 있다.
이는 사용중인 운영체제가 hello.py를 파이썬 스크립트로 인식하지 못하고 있음을 예상할 수 있다.
(물론 "python3 hello.py"을 사용하면 아무 문제없다.)
이번에는 python3 interpreter가 사용되도록 shebang 코드블록을 추가하고, hello.py를 실행시켜보자.
#!/usr/bin/env python3
print("Hello!")
hello.py 스크립트가 제대로 실행되는 것을 확인할 수 있다.
Shebang(#!)에 대한 더 자세한 설명은 갓키피디아에서...
https://en.wikipedia.org/wiki/Shebang_(Unix)
728x90
LIST
'After-work > linux' 카테고리의 다른 글
Linux 변수 substitution 예제($, ${}, $()) (0) | 2023.01.09 |
---|---|
Virtualbox Ubuntu 20.04 공유 /폴더 설정 (0) | 2023.01.09 |
Virtualbox ubuntu 가상환경에서 터미널(terminal)이 안 열리는 문제 (0) | 2023.01.07 |
sublime text linux (ubuntu) 설치 (0) | 2023.01.07 |
linux pycharm 실행 명령어 등록하기 (0) | 2023.01.07 |
Comments