.env 파일의 값을 덮어쓰지 않고 환경 변수에 추가

.env 파일의 값을 덮어쓰지 않고 환경 변수에 추가

실행 전에 파일이 로드되었다고 가정하면 .env덮어쓰지 않고 어떻게 추가할 수 있습니까?

DEBUG=True
FOO=BAR
PYTHONPATH="/Users/James/project/"

위 파일을 덮어쓰게(?) 하게 된다면 좋지 않을 것입니다. .bash_profileor 에 넣을 수도 있지만 .profile현재 가지고 있는 것과 일치하지 않으므로 virtualenv현재로 설정하고 싶습니다.

별 차이는 없을 것 같지만 저는 Mac OS X를 사용하고 있습니다. (제가 사용하고 있는 튜토리얼은 멀티 플랫폼입니다.)

답변1

가장 하고 싶은 일은 관심 있는 변수를 내보내는 것입니다. 다음은 현재 셸과 이 셸이 생성하는 모든 하위 프로세스에서 변수를 사용할 수 있도록 합니다.

export PYTHONPATH=$PYTHONPATH:/Users/James/project

여기에 사용된 프로세스는 PYTHONPATH먼저 기존 경로에서 대상을 검색하고, 찾을 수 없으면 시도합니다 /Users/James/project. 일부 기존 경로를 덮어쓰려면 먼저 새 경로를 추가할 수 있습니다.

export PYTHONPATH=/Users/James/project:$PYTHONPATH

두 경우 모두 다른 쉘에서는 변수를 볼 수 없습니다(분명히 쉘을 닫으면 변수에 액세스할 수 없게 됩니다).

관련 정보