./myscript.py를 사용하여 우분투 시스템에서 Python 스크립트를 실행하세요.

./myscript.py를 사용하여 우분투 시스템에서 Python 스크립트를 실행하세요.

우분투 컴퓨터에서 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

관련 정보