우분투 컴퓨터에서 myscript.py라는 Python 스크립트를 실행하고 있습니다. 나는 보통 아래와 같이 python 명령을 사용하여 Python 스크립트를 실행합니다.
python main.py
최근에 Github 저장소에서 Python 스크립트를 다운로드했습니다. 저장소를 보려면 여기에서 찾을 수 있습니다.https://github.com/gsrivas4/mnist-gan), 아래와 같이 "./"를 사용하여 스크립트를 실행해야 합니다.
./main.py
Python 스크립트를 실행하는 두 번째 방법은 나에게 새로운 방법입니다. "./"를 사용하여 스크립트를 실행할 수 있는지와 이 방법으로 다른 언어에 대한 스크립트도 실행할 수 있는지 혼란스럽습니다. 일반적으로 스크립트 이름을 추가하기 전에 프로세스를 시작하는 Python과 같은 바이너리 이름을 예상합니다. 스크립트가 프로세스에 입력됩니다. 또한 스크립트를 실행할 때 "./"의 의미가 무엇인지 알고 싶습니다. 이것은 사소한 질문인 것 같지만 온라인에서는 많은 도움을 찾을 수 없습니다.
또한 Python 파일 중 하나를 실행 가능하게 만든 다음 실행해 보았습니다. 그러나 ./로 실행하면 Python 라이브러리 가져오기 명령에서 오류가 발생합니다.
답변1
./
현재 작업 디렉터리를 나타내는 상대 경로입니다. 자신의 파일이 아닌 파일을 실행할 때 PATH
전체 경로나 상대 경로를 앞에 붙여야 합니다. ./
이 방법이 가장 쉬운 방법이지만 이와 같은 전체 경로를 사용하는 경우에도 작동합니다./path/to/script.py
Python 스크립트를 실행할 때 오류가 발생하는 이유는 다음과 같습니다.
./script.py
대신에:
python script.py
그 이유는 스크립트를 실행할 때 사용할 인터프리터를 알려주는 hashbang(shebang) 인터프리터 라인이 맨 위에 없기 때문입니다. bash 또는 스크립트를 실행하는 데 사용하는 쉘을 사용하여 실행을 시도할 수 있습니다. (바라보다Shebang 없이 스크립트를 실행하는 쉘 인터프리터는 무엇입니까?)
Python을 사용하여 스크립트를 올바르게 실행하려면 스크립트의 첫 번째 줄에 다음을 추가하세요.
#!/usr/bin/env python