사용자가 설정 한 환경 변수를 어떻게 읽을 수 있습니까?코코아에서 환경 변수를 읽으려면 어떻게해야합니까?
저는 Mac (코코아)에서 데스크톱 개발을 처음 사용하고 있으며 아마존의 s3 서비스에 액세스하는 데 사용할 수있는 작은 도구를 만들고 있습니다.
환경 변수를 .bash_profile에 설정했지만 사용자가 입력 한 위치 (.bashrc, .bash_profile 또는 .profile 등)에 관계없이이 환경 변수를 사용하고 싶습니다.
사용자가 설정 한 환경 변수를 어떻게 읽을 수 있습니까?코코아에서 환경 변수를 읽으려면 어떻게해야합니까?
저는 Mac (코코아)에서 데스크톱 개발을 처음 사용하고 있으며 아마존의 s3 서비스에 액세스하는 데 사용할 수있는 작은 도구를 만들고 있습니다.
환경 변수를 .bash_profile에 설정했지만 사용자가 입력 한 위치 (.bashrc, .bash_profile 또는 .profile 등)에 관계없이이 환경 변수를 사용하고 싶습니다.
봐 NSProcessInfo의 environment 메서드에서. 환경의 NSDictionary를 반환합니다. PATH에 대한
NSString* path = [[[NSProcessInfo processInfo]environment]objectForKey:@"PATH"];
당신은있는 NSString으로 변환 GNU 라이브러리 http://www.gnu.org/software/libc/manual/html_node/Environment-Access.html#Environment-Access
에서 C API를 사용할 수 있습니다 현대 OBJ-C :
NSString *envVarString = @(getenv("__MY_ENV_NAME__"));
기존의 OBJ-C :
NSString *envVarString = [NSString stringWithUTF8String: getenv("__MY_ENV_NAME__")];
'.bash_profile','.bashrc' 등에서 환경 변수를 설정하면 GUI 응용 프로그램에서 액세스 할 수 없습니다. 이러한 파일은 CLI에 대한 환경 변수 만 저장하므로 환경 변수는 GUI 응용 프로그램에서 읽을 수 있도록 다른 곳에 저장해야합니다. http://stackoverflow.com/questions/135688/setting-environment-variables-in-os-x를 참조하십시오. 사용자에게 정보를 다시 입력하고 키 체인 또는 환경 설정에 적절하게 저장하도록 요청하는 것이 더 쉬울 수도 있습니다 . –