我想更新我的鱼壳以使用MAMP的当前版本的PHP(目前正在使用的版本)。
我发现了一篇关于如何在bash中执行此操作的优秀文章,但我似乎无法解决如何在鱼类中实现这一目标?
文章是:How to override the path of PHP to use the MAMP path?
具体来说:
# Use MAMP version of PHP
PHP_VERSION=`ls /Applications/MAMP/bin/php/ | sort -n | tail -1`
export PATH=/Applications/MAMP/bin/php/${PHP_VERSION}/bin:$PATH
你是如何在鱼类中实现这一目标的? Fish希望将PHP_VERSION
导出为字符串。
并且还使用这些命令别名来使用当前版本的MySQL
# Export MAMP MySQL executables as functions
# Makes them usable from within shell scripts (unlike an alias)
mysql() {
/Applications/MAMP/Library/bin/mysql "$@"
}
mysqladmin() {
/Applications/MAMP/Library/bin/mysqladmin "$@"
}
export -f mysql
export -f mysqladmin
我试图找出其中的各个部分,但对命令行的理解有限,这使得很难知道搜索'对于。
感谢任何帮助!
答案 0 :(得分:5)
通常您可以简单地修改fish_user_paths
,但由于您希望在每次启动时动态确定路径,因此直接设置PATH更简单。直截了当的翻译:
set PHP_VERSION (ls /Applications/MAMP/bin/php/ | sort -n | tail -1)
set -x PATH /Applications/MAMP/bin/php/$PHP_VERSION/bin $PATH
你会把它放在~/.config/fish/fish.config
关于“导出功能”,这总是一个可疑的想法(它是那个可怕的bash安全漏洞的来源)并不是鱼支持的东西。您应该安排/Applications/MAMP/Library/bin/mysql
在PATH中,以便子脚本可以找到您的可执行文件。就像以前一样:
set -x PATH /Applications/MAMP/Library/bin/ $PATH