Python 모듈 경로를 추가하려면 쉘 스크립트에 명령을 추가하세요.

Python 모듈 경로를 추가하려면 쉘 스크립트에 명령을 추가하세요.

Python 모듈(setup.sh)을 설치하는 데 사용되는 Linux 쉘 스크립트를 수정하여 환경 변수에 폴더를 추가하고 싶습니다. 이는 터미널에서 Python 모듈을 실행하는 데 필요합니다. 예를 들어 python -m newtool.py

몇 가지 내용을 읽은 후 이를 구현한 방법은 setup.sh 파일에서 Python 스크립트(addmoduletopath.py)를 호출하고 새 Python 모듈 폴더를 PYTHONPATH 환경 변수(sys.path.append 사용)에 추가하는 것이었습니다.

이것은 Python 모듈을 PYTHONPATH 환경 변수에 추가하는 것 같습니다. 일단 설정하고 "python -m newtool.py"를 실행하면 python이 모듈 경로를 찾습니다. 그러나 sudo(예: sudo python -m newtool.py)를 사용하여 동일한 명령을 실행하면 "newtool이라는 모듈이 없습니다"라는 메시지가 나타납니다.

어떤 아이디어가 있나요?

그런데. 이것은 내 addmoduletopath.py 스크립트입니다.

#!/usr/bin/env python
import sys

newtool="/opt/newtool"
if (newtool not in sys.path):
        sys.path.append(newtool)

답변1

이는 sudo 모드에서 실행할 때 현재 환경 변수가 유지되지 않기 때문에 발생합니다. -E 스위치와 함께 sudo 명령을 실행하면 환경 변수가 전달됩니다.

자세한 내용은 man sudo를 읽어보세요.

관련 정보