2014-07-18 2 views
0

bash에서 프로그램을 실행하려고합니다.Bash에서 실행 getenv가 정의되지 않았습니다.

나는 다음과 같은 오류가 점점 오전 :

File "/Users/tai/Desktop/FlashY/flashy/sniffer/awsAccess.py", line 8, in aws_access_key_id=getenv('AWS_ACCESS_KEY');

NameError: name 'getenv' is not defined

을 나는 bash_profile에 저장된 수출 있습니다. 나는 확인하고 그들 모두가 발견 :

vim ~/.bash_profile 

awsAccess에 내 코드는 다음과 같습니다

#aswAccess holds the names of the bash environment set keys. 
#used by other classes to create a connection to aws 
aws_access_key_id=getenv('AWS_ACCESS_KEY'); 
aws_secret_access_key=getenv('AWS_SECRET_KEY'); 
aws_dynamo_region=getenv('DYANAMO_REGION') 

키 이름은 (확실하지 않은 것을이 전화를) 내 bash_profile에 일치합니다.

getenv를 사용한 예제가 좋았습니다. 최신 osx, python 2.7, bash shell에서 실행 중입니다. 무엇이 잘못 될지 확실하지 않습니다.

감사합니다.

답변

3

getenv은 os 모듈의 함수이므로 적절하게 가져 오기하지 않으면 혼자서 호출 할 수 없습니다.

그래서 두 파일 넣어의 상단 :

import os 

os.getenv()에 함수 호출을 변경합니다. 또는 독립 실행 형 함수를 가져 오십시오.

from os import getenv 
+0

아, 내 바보 같았습니다. 감사합니다! 이상하게도 의사 코드로 설계된 예가 없었습니다. S – Tai

+0

@TaiHirabayashi 문제가 없습니다. 여전히 작동하지 않는다면'source ~/.bash_profile'을 실행했는지 확인하거나 새로운 쉘을 열어보십시오. –

관련 문제