如何将 ~/.composer/vendor/bin 目录放在你的 PATH 中?
Posted
技术标签:
【中文标题】如何将 ~/.composer/vendor/bin 目录放在你的 PATH 中?【英文标题】:How to place the ~/.composer/vendor/bin directory in your PATH? 【发布时间】:2014-10-11 22:47:47 【问题描述】:我在 Ubuntu 14.04 上,我一直在尝试所有可能的方法来安装 Laravel,但无济于事。错误消息我尝试的一切。我现在正在尝试快速入门文档中的第一种方法,即通过 Laravel 安装程序,但它说“确保将 ~/.composer/vendor/bin
目录放在您的 PATH
中,以便在您运行 Laravel 时找到 Laravel 可执行文件在您的终端中发出命令。”所以我的问题是,我该怎么做?这可能是一个简单的问题,但我真的很沮丧,希望能得到任何帮助。
【问题讨论】:
【参考方案1】:将此文件夹放在PATH环境变量类型中
export PATH="$PATH:$HOME/.composer/vendor/bin"
这会将文件夹附加到您现有的 PATH,但是,它仅对您当前的终端会话有效。
如果您希望它自动设置,这取决于您使用的 shell。对于 bash,您可以使用您喜欢的编辑器将此行附加到 $HOME/.bashrc
或在 shell 上键入以下内容
echo 'export PATH="$PATH:$HOME/.composer/vendor/bin"' >> ~/.bashrc
为了检查它是否有效,请注销并再次登录或执行
source ~/.bashrc
在外壳上。
PS:对于其他没有~/.bashrc
的系统,你也可以把这个放到~/.bash_profile
中
PSS:对于更新的 laravel,您需要将 $HOME/.config/composer/vendor/bin
放在 PATH
上。
PSSS:如果您想将此文件夹放在其他 shell 或 GUI 上的路径上,则应将上述 export
命令附加到 ~/.profile
(参见 https://help.ubuntu.com/community/EnvironmentVariables)。
【讨论】:
在 ubuntu 14.04 上像魅力一样工作。如果事情似乎不起作用,您可能想要注销/登录和/或打开一个新的终端窗口。 您应该在作曲家路径中使用$HOME
而不是~
。不确定 bash,但是当你在 zsh 的.zshrc
中设置它时肯定是必要的。
需要注意的是,在运行laravel 5.1的Ubuntu 16.04上,路径为:~/.config/composer/vendor/bin
我试过这个,没有运气!我也没有名为 ./composer/vendor 的目录。我只有 .composer,里面有一个缓存文件夹。现在已经搜索了 2 天。
echo 'export PATH="$PATH:$HOME/.config/composer/vendor/bin"' >> ~/.bashrc 缺少 .config 目录然后执行源 ~/.bashrc
【参考方案2】:
详细说明:
在你的 ~/.bashrc 添加这些行:
export PATH="$PATH:~/.composer/vendor/bin"
然后重新加载:
source ~/.bashrc
检查是否添加正确:
echo $PATH
/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/sbin:/home/web/bin:~/.composer/vendor/bin
【讨论】:
谢谢!我对unix不太熟悉,这完全有道理! (还有美元!) 我回显 $PATH 的东西不包括作曲家部分。我已经以所有可能的方式将它添加了 100 多次,重新启动了大约 5 次重新加载的 bashrc .. 什么都没有。有什么想法吗? source ~/.bashrc --- 每次我应该使用 laravel 时,我都必须这样做。这对我来说是最好的答案【参考方案3】:在全局安装了 composer 的 Ubuntu 16.04 LTS 中,这对我有用。
编辑主目录中的 .bashrc 文件,将路径放置在 /your/home/.config/composer/vendor/bin 中的 composer bin 文件夹
echo 'export PATH="$PATH:$HOME/.config/composer/vendor/bin"' >> ~/.bashrc
source ~/.bashrc
如果不起作用,请验证 composer bin 目录的路径,然后关闭并重新打开终端。否则,请尝试注销并登录 Ubuntu。
也适用于 ubuntu 18.04。感谢@chifliiiii 的反馈。
【讨论】:
使用 Parrot OS 3.8 这有效,当您运行 composer laravel 安装程序时,它会将目录更改为将当前目录更改为 /home/username/.config/composer ./composer.json 已根据此答案中的路径进行更新 这是在 ubuntu 17.10 上为我工作的那个。谢谢。 20.04 的工作就像一个魅力。【参考方案4】:要在 Yosemite (OS X 10.10.5) 上设置 PATH,请使用以下命令:
echo 'export PATH="$PATH:$HOME/.composer/vendor/bin"' >> ~/.bash_profile
要重新加载退出终端并重新启动或使用:
source ~/.bash_profile
帮助了我,希望它可以帮助其他人!
【讨论】:
谢谢@forca001 在我的.zshrc
中使用~
不起作用,最终使用$HOME
起作用
不错!这在 Mac OS X El-Captain 上也适用于我。
这是在我运行 OSX Mojave 的 Mac 上对我有用的唯一答案。谢谢大家!
这应该是公认的答案。使用 MacOS Majave 14.x【参考方案5】:
我完成了上述所有操作,但对我不起作用。
我刚刚将它复制到我的终端中,它对我有用。
curl -sS https://getcomposer.org/installer | sudo php -- --install-dir=/usr/local/bin --filename=composer
【讨论】:
@grit45 你能解释一下为什么它有点作用 这个问题是关于在路径上放置一些目录而不是如何安装composer。【参考方案6】:这是用于在 Mac OS X 版本 10.9.5 上设置 PATH。
我尝试添加 $HOME 因为我使用用户配置文件:
echo 'export PATH="$PATH:$HOME/.composer/vendor/bin"' >> ~/.bashrc
当您不使用用户配置文件时:
echo 'export PATH="$PATH:~/.composer/vendor/bin"' >> ~/.bashrc
然后重新加载:
source ~/.bashrc
希望对你有所帮助。
【讨论】:
【参考方案7】:我的路径没有 /.composer,只有 /composer,所以我的路径是:-
export PATH="$PATH:$HOME/.config/composer/vendor/bin"
这在 ubuntu 20.04 上对我有用
【讨论】:
这对我有用 ubuntu 20.04【参考方案8】:打开 Mac 终端:
vi ~/.bashrc
如果你没用过vi,一开始可能会觉得有点搞笑,所以请仔细输入以下代码,按顺序:
i
export PATH="$PATH:$HOME/.composer/vendor/bin"
按 ESC
:
w
按回车
:
q
按回车
现在您应该已经返回到正常的终端视图了。
检查 composer 现在是否有正确的路径:
cd ~/.composer
echo $PATH
如果您看到包含文件目录的路径(例如 /Users/JeffStrongman/.composer/vendor/bin),那么您就可以开始了。
cd
然后运行您的安装。我在配置我的 Mac 以使用 Laravel Valet 时遇到了这个问题。
示例(可选)
valet install
【讨论】:
【参考方案9】:对于 Linux Mint 18:编辑 ~/.bashrc 并将这一行添加到它的底部:
export PATH="$PATH:$HOME/.config/composer/vendor/bin"
然后是资源 .bashrc(在控制台中输入):
source ~/.bashrc (or close and reopen the terminal)
通过在控制台中输入来测试它:
echo $PATH
或输入控制台:
laravel
【讨论】:
【参考方案10】:如果有人使用 ZSH,所有步骤都是一样的,除了一些事情:
-
找到文件
.zshrc
在底部添加以下行export PATH=~/.composer/vendor/bin:$PATH
source ~/.zshrc
然后尝试valet
,如果要求输入密码,则一切正常。
【讨论】:
【参考方案11】:将环境变量添加到bashrc
文件中
对于 Ubuntu 17.04 和 17.10:
echo 'export PATH="~/.config/composer/vendor/bin"' >> ~/.bashrc
适用于 Ubuntu 18.04
echo 'export PATH="$PATH:$HOME/.composer/vendor/bin"' >> ~/.bashrc
检查环境变量是否工作,首先重新加载bashrc
文件
source ~/.bashrc
如果没有任何方法,那么首先检查安装 Composer 的位置以检查运行此命令:
locate composer -l 1
然后复制输出将输出添加到这一行并再次运行命令。
echo 'export PATH="OUTPUTHERE/vendor/bin"' >> ~/.bashrc
在 Laravel 命令工作成功后,授予父文件夹权限(例如,您使用的是 apache 服务器,而不是授予 apache web 列表目录的权限)
sudo chown $USER:$USER -R /var/www/html/
【讨论】:
【参考方案12】:将 export PATH="$PATH:~/.composer/vendor/bin" 添加到 ~/.bashrc 适合您的情况,因为您仅在运行终端时才需要它。 为了完整起见,将其附加到 /etc/environment 中的 PATH(sudo gedit /etc/environment 并添加 ~/.composer/vendor/bin PATH) 也可以工作,即使它被其他程序调用,因为它是系统范围的环境变量。https://help.ubuntu.com/community/EnvironmentVariables
【讨论】:
【参考方案13】:MacOS Sierra 用户:
如果您的计算机上安装了 MAAP 和 MAAP Pro,请确保从 Application 文件夹中删除它
在根目录cd ~
检查自制软件(如果您安装了自制软件)或更新 PHP
brew install php70
export PATH="$PATH:$HOME/.composer/vendor/bin"
echo 'export PATH="$PATH:$HOME/.composer/vendor/bin"' >> ~/.bash_profile
source ~/.bash_profile
cat .bash_profile
确保这是显示: export PATH="$PATH:$HOME/.composer/vendor/bin"
laravel
现在应该是全局的
【讨论】:
你节省了我的时间,我正在寻找 2 小时【参考方案14】:AWS Ubuntu 18.04 LTS
Linux ws1 4.15.0-1023-aws #23-Ubuntu SMP Mon Sep 24 16:31:06 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
echo 'export PATH="$PATH:$HOME/.config/composer/vendor/bin"' >> ~/.bashrc && source ~/.bashrc
为我工作。
【讨论】:
对现有答案有什么改进? 似乎对我有用【参考方案15】:在 Fedora 上:
一些 composer bin 不在 .composer 目录中 因此,您需要使用以下方法找到它们:
locate composer | grep vendor/bin
然后将该部分回显到.bashrc中
echo 'export PATH="$PATH:$HOME/you_composer_vendor_path"' >> ~/.bashrc
我的是"/.config/composer/vendor/bin"
干杯!
【讨论】:
【参考方案16】:适用于 Ubuntu 16.04
echo 'export PATH="$PATH:$HOME/.config/composer/vendor/bin"' >> ~/.bashrc
source ~/.bashrc
【讨论】:
对现有答案有什么改进?【参考方案17】:Composer bin 目录设置并存储在bin-dir
配置变量中,并且可以根据您的设置而有所不同。运行命令composer global config bin-dir --absolute
将告诉您全局作曲家bin 目录的绝对路径。使用此命令,您可以修改您的 .bash_profile
以将其添加到您的 PATH
中,这正是它的配置方式。
# Add Composer bin-dir to PATH if it is installed.
command -v composer >/dev/null 2>&1 &&
COMPOSER_BIN_DIR=$(composer global config bin-dir --absolute 2> /dev/null)
PATH="$PATH:$COMPOSER_BIN_DIR";
export PATH
【讨论】:
【参考方案18】:我这样做了,它适用于 osx:
午餐你的终端
nano ~/.bash_profile
然后粘贴
export PATH=~/.composer/vendor/bin:$PATH
按下 control + x
按 y 键
按回车/回车键
【讨论】:
【参考方案19】:这是我在我的 .bashrc 文件中添加的并起作用的。
export PATH="$PATH:/home/myUsername/.composer/vendor/bin"
【讨论】:
【参考方案20】:我尝试了很多解决方案,但在 Ubuntu 20.04 上只有这对我有用:
export PATH="$HOME/.composer/vendor/bin:$PATH"
【讨论】:
【参考方案21】:要解决这个问题,请确保首先找到 composer.phar 的路径
我的例子是这样的
alias composer="php /Users/Your-username/composer.phar"
转到 cd 用户 > 您的用户 > 命令 ls 并查看 composer.phar 是否存在,如果是,则将上述行添加到您的 .bash_profile。确保将用户名更改为您自己的。
希望对你有所帮助
【讨论】:
以上是关于如何将 ~/.composer/vendor/bin 目录放在你的 PATH 中?的主要内容,如果未能解决你的问题,请参考以下文章