/usr/bin/env Python이 cmdline에서 실행되고 #에서 실패합니다! 줄

/usr/bin/env Python이 cmdline에서 실행되고 #에서 실패합니다! 줄

다음 "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 스타일의 줄 바꿈에서 캐리지 리턴일 가능성이 높습니다. 즉, 줄 바꿈과 캐리지 리턴(또는 그 반대)으로 줄이 끝나는 것입니다.

모든 줄 바꿈을 (UNIX 스타일) dos2unix로만 변환하려면 스크립트 파일에서 를 사용해보세요 .0x10

관련 정보