9

如何读取用户设置的环境变量?

我是 Mac(可可)桌面开发的新手,我正在构建一个小工具,可以用来访问亚马逊的 s3 服务。

我在我的 .bash_profile 中设置了我的环境变量,但无论用户在哪里输入它(.bashrc、.bash_profile 或 .profile 等),我都希望它能够工作。

4

2 回答 2

18

查看NSProcessInfo 上的环境方法。它返回环境的 NSDictionary,例如 PATH

NSString* path = [[[NSProcessInfo processInfo]environment]objectForKey:@"PATH"];
于 2012-07-18T23:04:20.340 回答
5

您可以使用来自 GNU 库 http://www.gnu.org/software/libc/manual/html_node/Environment-Access.html#Environment-Access的 C API

转换为 NSString:现代 obj-c:

NSString *envVarString = @(getenv("__MY_ENV_NAME__"));

旧版 obj-c:

NSString *envVarString = [NSString stringWithUTF8String: getenv("__MY_ENV_NAME__")];
于 2012-07-18T22:43:44.627 回答