/usr/bin/env cmdline에서 실행 중인 python이 실패합니다 #!line

/usr/bin/env cmdline에서 실행 중인 python이 실패합니다 #!line

다음 "shebang" 첫 번째 줄을 추가하여 Python 스크립트를 실행 가능하게 만들려고 합니다.

#!/usr/bin/env python

하지만 파일을 실행하면 다음과 같은 결과가 나타납니다.

$ myscript.py
: No such file or directory

이제 이 줄을 직접 시도하면 env작동합니다.

]$ /usr/bin/env python
Python 2.6 (r26:66714, May  5 2010, 14:02:39)
etc. etc.

동일한 줄이 파일 내부에서는 실패하지만 외부에서는 성공하는 이유는 무엇입니까?

답변1

shebang 줄 어딘가에 잘못된 문자가 있을 수 있습니다. 당신이 그것을 삽입한 사람이기 때문에 그것은 캐리지 리턴일 가능성이 높습니다. 즉, 당신의 줄은 줄 바꿈과 캐리지 리턴(또는 그 반대)으로 끝납니다(ODS 스타일 줄 바꿈).

dos2unix스크립트 파일에서 모든 줄 바꿈을 0x10(UNIX 스타일) 로만 변환 해 보십시오 .

관련 정보