【问题标题】:Why PATH is not available for custom shell scripts executed from Xcode?为什么 PATH 不适用于从 Xcode 执行的自定义 shell 脚本?
【发布时间】:2011-09-02 08:30:30
【问题描述】:

我观察到 Xcode 执行的自定义 shell 脚本,在运行脚本阶段,没有设置任何环境变量。他们有大量其他变量,但没有 PATH。

有没有可能解决这个问题,如何解决?我只想运行一个应该在路径中的工具,我不想开始手动检查可能的位置。

【问题讨论】:

    标签: xcode bash shell path environment-variables


    【解决方案1】:

    您可以明确地获取用户 .bashrc.profile 等。或者更好的是,运行类似的东西

    PATH=$(bash -l -c 'echo $PATH')
    

    不会冒污染其他变量的风险。

    【讨论】:

    • 这在遥远的 2017 年对我来说行不通。=(
    【解决方案2】:

    Ivan Andrus 的回答让我想到了一种我认为更简洁、更完整的方法:完全在新的 shell 中运行脚本。例如:

    bash -l -c "./configure --prefix=${DERIVED_FILE_DIR} && make && make install"
    

    我使用双引号进行变量扩展。扩展您需要的任何变量是个好主意,因为任何现有的变量都可能被为新环境创建的变量覆盖。

    【讨论】:

    • 如果您需要一个全新的环境,可以讨论选项here
    【解决方案3】:

    你可能想关注这个话题: Setting environment variables in OS X? 我在 environment.plist 上运气不错。

    【讨论】:

    • 你是对的,考虑到 Xcode 是一个 GUI 应用程序它可能使用 environment.plist,仍然修改它是不可接受的,因为我想将它包含在构建脚本中,一个不需要的脚本环境改造。
    猜你喜欢
    • 1970-01-01
    • 2012-01-14
    • 1970-01-01
    • 1970-01-01
    • 2021-04-23
    • 1970-01-01
    • 1970-01-01
    • 2020-05-25
    • 1970-01-01
    相关资源
    最近更新 更多