Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/bash/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
从xcode调用时,我的bash脚本不会在.bash\u配置文件中获取环境变量_Xcode_Bash_Shell - Fatal编程技术网

从xcode调用时,我的bash脚本不会在.bash\u配置文件中获取环境变量

从xcode调用时,我的bash脚本不会在.bash\u配置文件中获取环境变量,xcode,bash,shell,Xcode,Bash,Shell,在Xcode 5中,我有一个执行bash脚本的构建阶段。 我的问题是,当从Xcode调用该脚本时,它无法访问我在.bash_配置文件中设置的环境变量 我试图从xcode创建environment.plist文件并在那里复制我的环境变量,但bash脚本仍然不知道我的变量。 我可以做的一件事是从myscript调用source~/.bash_profile。但在我的bash_简介中,我有这样的行 export PATH=/some/new/path:$PATH 因此,每次在xcode编译我的项目时

在Xcode 5中,我有一个执行bash脚本的构建阶段。 我的问题是,当从Xcode调用该脚本时,它无法访问我在.bash_配置文件中设置的环境变量

我试图从xcode创建environment.plist文件并在那里复制我的环境变量,但bash脚本仍然不知道我的变量。 我可以做的一件事是从myscript调用source~/.bash_profile。但在我的bash_简介中,我有这样的行

export PATH=/some/new/path:$PATH
因此,每次在xcode编译我的项目时调用source ~/.bash_profile,就会一次又一次地将/some/new/path前置到我的路径


从xcode调用脚本时,如何让脚本知道环境变量?

寻源
~/.bash\u profile
没有问题。当Xcode运行脚本时,它调用脚本,脚本将
/some/new/path
前置到
路径
,编译项目并退出。当Xcode再次运行脚本时,新脚本没有更新的
路径
,因为它与先前运行的过程不同。因此,
/some/new/path
不是“一次又一次”加上前缀的,它只在脚本的生命周期中发生一次。每次编译都会触发一个全新的脚本,它们的环境不会共享,
PATH
不会永远增长。

我的脚本需要PATH变量才能运行。因此,对于您的解决方案,我仍然必须将上面描述的PATH变量行放在单独的脚本中,从而重新加载它并附加/前置路径everytime@Baba我忽略了你问题的最后一点。我现在更新了我的答案。