2014-12-29 6 views
3

virtualenv을 사용하여 서비스를 시작해야하는 bash 스크립트를 작성하고 있습니다. 내 bash는 스크립트는 다음과 같이 상상 :Python Virtualenv Check Environment

#!/bin/bash 
source /root/user/python-ev/bin/activate 
IPYTHON_OPTS="notebook --port 8889 --profile pyspark" pyspark --master spark://701.datafireball.com:7077 

그러나, 나는 환경이 활성화되어 있는지 확인 activateIPYTHON... 사이에 줄을 추가합니다. 환경 변수/명령이 셸에있어 내가 virtualenv 내부에 있는지 여부를 알 수 있습니까?

나는 virtualenv 안에 있다면 사용자 정의 파이썬 인터프리터를 가리켜 야하는 파이썬 경로를 인쇄하기 위해 하드 코딩 할 수 있지만 그 방법이 적절한 지 확실하지 않습니다.

감사합니다.

답변

5

VIRTUAL_ENV을 확인하고 원본 경로가 올바른지 확인할 수 있습니다. 이제 존재하지 않는다면 활성화되지 않았 음을 알 수 있습니다. 그렇다면 올바른 경로가 있는지 확인하고 확인해야합니다. 변수가 설정되어 있는지 확인하는 일을하거나하지 않습니다

올바른 배쉬 조각은 다음

if [[ -z "$VIRTUAL_ENV" ]]; then 
    echo "No VIRTUAL_ENV set" 
else 
    echo "VIRTUAL_ENV is set" 
fi 
입니다