2013-02-04 41 views
4

我正在运行一个自定义的脚本,其中包括一个应该知道bash命令(ios-sim)(二进制位于/ usr/local/bin,$ PATH知道)。但是,当由xcodebuild调用时,控制台会记录“未找到命令”。“命令找不到”与自定义运行脚本和xcodebuild

我能够手动执行命令,但我不知道为什么它在运行脚本中不起作用。我已经检查了用户,但如我所料是同一用户两次......

行调用IOS-SIM:

ios-sim launch $(dirname $TEST_HOST) $environment_args --args -SenTest All $test_bundle_path -v 

回答

7

而不是依靠$PATH,其值不显而易见,请使用到ios-sim的整个路径。

编辑您的自定义脚本和变化:

ios-sim launch ... 

/usr/local/bin/ios-sim launch ... 

之所以使用$PATH可能是危险的(也许太强烈的词)是在那里的设置不是很明显。例如,Xcode将使用在/etc/launchd.conf中配置的路径,并且/usr/local/bin可能已添加在/etc/profile~/.bash_profile中。

  • 请问launchd是否使用/etc/profile中的值,从而将它传递给Xcode使用?
  • Xcode启动的脚本是否使用/etc/profile~/.bash_profile

这是复杂的和这个环境的透彻理解,无疑可让您通过$PATH调用你的命令,但使用FULLPATH的命令是一个简单的方法将总是工作。