카테고리 없음
#!/usr/bin/env 를 쓰는 이유.
_뮨
2022. 6. 15. 22:15
생활코딩 이고잉님의 파이썬 수업을 듣다가 스크립트 파일의 최상단에 #!/usr/bin/env python3 를 작성하는 내용이 있었다.
주석이라는 뜻인가? url도 아니고 usr? bin은 또 뭐지? 해서 한 번 구글에 검색해보았다(기승전검색 ).
#! ---> shebang:sharp(#) 와 bang(!)의 합성어.
일단 #!은 주석이 아니라 하나의 기호이다.
#! 뒤에 나오는 것은 경로명으로 명령어들을 해석할 프로그램의 위치를 가리켜준다.
하지만 여러 사람이 한 파일을 공유하는 경우에, 사람마다 컴퓨터에서 파이썬의 위치가 다를 수 있다.
내 컴퓨터에서 python의 위치가 /usr/bin/python라서
절대경로를 /usr/bin/python 이라고 저장했다고 가정해보자.
그런데 A의 컴퓨터에서 파이썬은 /usr/local/python 에 있을 수 있고
B의 컴퓨터에서 파이썬은 /bin/python 에 있을 수 있다.
이러면 타인의 컴퓨터에서 인터프리터의 위치를 찾을 수가 없어서 실행이 안될 수 있다.
이럴때 #!/usr/bin/env 를 사용하면
절대경로에 상관없이 인터프리터의 위치를 자기절로 찾아서 실행해준다.
참 편리한 것 같다.