【发布时间】:2015-01-17 01:24:10
【问题描述】:
我需要使用一些工具,但是当我尝试在 Laravel 和 Cordova 中使用 PHP Artisan 时遇到一些问题,我需要注释一些行,因为 $PATH 无法正常工作。我是一个使用 Unix 的菜鸟 :)
为了更具体地说明我的问题,我需要这些行可以很好地协同工作,而无需根据我需要使用的工具取消注释和注释:
export PATH="/Applications/XAMPP/xamppfiles/bin:$PATH"
export PATH=~/.composer/vendor/bin:$PATH
我在取消注释时遇到的错误:
案例 1: Cordova 只能在 Xcode 4.6 或更高版本中运行。
案例 2: 需要 Mcrypt PHP 扩展。
编辑:我添加了完整的 bash 配置文件:
# The next line updates PATH for the Google Cloud SDK.
source /Users/chema/google-cloud-sdk/path.bash.inc
# The next line enables bash completion for gcloud.
source /Users/chema/google-cloud-sdk/completion.bash.inc
#Comment this line make Cordova works fine
#export PATH="/Applications/XAMPP/xamppfiles/bin:$PATH"
export PATH=${PATH}:/Users/chema/sdk-android/sdk/platform-tools:/Users/chema/sd$
#Comment this line make PHP Artisan with Laravel works fine
export PATH=~/.composer/vendor/bin:$PATH
export ANDROID_HOME=/Users/chema/sdk-android/sdk
export PATH=${PATH}:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools
如果我取消注释这两行,PHP Artisan Laravel 就可以工作。
echo PATH 当 Cordova 工作而 PHP Artisan 不工作时:
哪个 xcodebuild /usr/bin/xcodebuild
/Users/chema/.composer/vendor/bin:/Users/chema/google-cloud-sdk/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin :/Users/chema/sdk-android/sdk/platform-tools:/Users/chema/sdk-android/sdk$:/Users/chema/sdk-android/sdk/tools:/Users/chema/sdk-android/ sdk/平台工具
echo PATH 当 PHP Artisan 正常工作而 Cordova 不工作时:
/Applications/XAMPP/xamppfiles/bin:/Users/chema/google-cloud-sdk/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Users /chema/sdk-android/sdk/platform-tools:/Users/chema/sdk-android/sdk$:/Users/chema/sdk-android/sdk/tools:/Users/chema/sdk-android/sdk/platform -工具
哪个 xcodebuild /usr/bin/xcodebuild
谢谢!!
【问题讨论】:
-
而不是
PATH=${PATH}:...尝试做:export PATH=$PATH:... -
@sircapsalot 这会有什么不同?
-
谁知道...我对 bash 还是有点陌生,让我休息一下
:)只是提供一个潜在的解决方案。因此为什么我没有给出答案 -
@sircapsalot 很好。
{}字符可用于分隔环境变量引用;所以你可以做类似echo ${HOME}hello的事情,echo $HOMEhello显然会失败。另一方面,()字符则不同。 -
嗨!我已经更新了我的问题;)
标签: macos .bash-profile