如何将〜/ .composer / vendor / bin目录放置在PATH中?


232

我在Ubuntu 14.04上,并且一直在尝试所有可能的方法来安装Laravel。错误消息我尝试的一切。我现在正在尝试快速入门文档中的第一种方法,即通过Laravel Installer,但是它说:“确保将~/.composer/vendor/bin目录放在您的目录中,PATH以便在终端中运行Laravel命令时可以找到Laravel可执行文件。” 所以我的问题是,我该怎么做?这可能是一个简单的问题,但我真的很沮丧,希望对您有所帮助。

Answers:


520

将此文件夹放在PATH环境变量类型上

export PATH="$PATH:$HOME/.composer/vendor/bin"

这会将文件夹追加到您现有的PATH中,但是,该文件夹仅对您当前的终端会话有效。

如果要自动设置,则取决于您使用的外壳。对于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/binPATH

PSSS:如果要将此文件夹也放置在其他Shell或GUI的路径上,则应将上述export命令附加到~/.profile(cf. https://help.ubuntu.com/community/EnvironmentVariables)。


1
在ubuntu 14.04上,它的工作原理就像是一种魅力。如果事情似乎不起作用,您可能想注销/登录和/或打开一个新的终端窗口。
米歇尔2015年

4
您应该在composer路径中使用$HOME而不是~。不确定bash,但是在zsh的bash中设置它肯定是必要的.zshrc
phaberest

40
应当注意,在运行laravel 5.1的Ubuntu 16.04上,路径为:〜/ .config / composer / vendor / bin
waweru

1
我已经尝试过了,没有运气!另外,我没有名为./composer/vendor的目录。我只有.composer,在那儿我有一个缓存文件夹..现在已经搜索了2天。
nclsvh

1
echo'export PATH =“ $ PATH:$ HOME / .config / composer / vendor / bin”'>>〜/ .bashrc丢失了.config目录,然后执行源〜/ .bashrc
cecil merrel aka Bringrainfire

137

详细说明:

在〜/ .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不太熟悉,这完全合情合理!(还有美元!)
sunnysidedown916

我回声$ PATH的东西不包括作曲家的部分。.我已经以所有可能的方式将其添加了100多次,重新启动了大约5倍的重新加载的bashrc。任何想法?
nclsvh

来源〜/ .bashrc ---每次我要laravel时都要这样做。这是对我最好的答案
Brainmaniac

54

在全局安装了作曲器的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

如果不起作用,请验证指向作曲家bin目录的路径,然后关闭并重新打开终端。否则,请尝试注销并登录Ubuntu。

也可以在Ubuntu 18.04中使用。感谢@chifliiiii的反馈。


1
使用Parrot OS 3.8
Abdelsalam Shahlol,2017年

1
这有效,当您运行composer laravel installer时,它将目录更改为/home/username/.config/composer。/composer.json已按照此答案中的路径进行了更新
ottz0

1
这是在ubuntu 17.10上为我工作的那个。谢谢。
GabMic

36

要在优胜美地(OS X 10.10.5)上设置PATH,请使用以下命令:

echo 'export PATH="$PATH:$HOME/.composer/vendor/bin"' >> ~/.bash_profile

要重新加载退出终端并重新启动,或使用:

source ~/.bash_profile

帮助了我,希望它可以帮助其他人!


2
谢谢@ forca001,.zshrc这是我无法使用的~,但最终还是使用了$HOME
phaberest

4
真好!在Mac OS X El-Captain上,这也对我有效。
阿斯卡

1
这是在运行OSX Mojave的Mac上对我有用的唯一答案。谢谢堆!
Ryan Coolwebs 18/12/10

这应该是公认的答案。使用MacOS Majave 14.x
OMi Shah,

15

我做了以上所有工作,但对我却没有用。

我只是将其复制到我的终端中,并且对我有用。

curl -sS https://getcomposer.org/installer | sudo php -- --install-dir=/usr/local/bin --filename=composer

1
@ grit45您能解释一下它为什么起作用的原因吗
Abhishek Goel

这个问题是关于在路径上放置一些目录,而不是如何安装composer。
MrTux

9

这用于在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

希望对您有所帮助。


4

打开Mac终端:

vi ~/.bashrc

如果您还没有使用过vi,那么一开始它可能看起来有些可笑,因此请按顺序仔细输入以下代码:

i
export PATH="$PATH:$HOME/.composer/vendor/bin"

按ESC

:
w

按ENTER

:
q

按ENTER

现在您应该返回到普通的终端视图。

检查作曲家现在是否具有正确的路径:

cd ~/.composer
echo $PATH

如果您看到包含文件目录的路径(例如/Users/JeffStrongman/.composer/vendor/bin),那么就很好了。

cd

然后运行安装。在配置Mac以使用Laravel Valet时遇到了这个问题。

示例(可选)

valet install

3

对于Linux Mint 18:编辑〜/ .bashrc并将此行添加到底部:

export PATH="$PATH:$HOME/.config/composer/vendor/bin"

然后资源.bashrc(在控制台中键入):

source ~/.bashrc (or close and reopen the terminal)

通过在控制台中输入进行测试:

echo $PATH

或输入控制台:

laravel

3

将环境变量添加到 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网站列表目录的权限)

sudo chown $USER:$USER -R /var/www/html/

2

在您的情况下,将export PATH =“ $ PATH:〜/ .composer / vendor / bin”添加到〜/ .bashrc可行的,因为仅在运行终端时才需要它。
为了完整起见,即使将其附加到/ etc / environment中的PATH(sudo gedit / etc / environment并在PATH中添加〜/ .composer / vendor / bin也将起作用,即使它是其他程序也已调用,因为它是系统范围的环境变量。
https://help.ubuntu.com/community/EnvironmentVariables


2

我的路径没有/.composer,只有/ composer,所以我的路径是:-

export PATH="$PATH:$HOME/.config/composer/vendor/bin"

这对我在ubuntu 20.04上起作用


1

MacOS Sierra用户:

如果已在计算机上安装MAAP和MAAP Pro,请确保将其从“应用程序”文件夹中删除

在根目录中cd ~ 检查homebrew(如果已安装homebrew)或具有最新的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

现在应该是全球性的


1

对于Ubuntu 16.04

echo 'export PATH="$PATH:$HOME/.config/composer/vendor/bin"' >> ~/.bashrc

source ~/.bashrc

现有答案有什么改进?
MrTux

1

Composer bin目录已设置并存储在bin-dirconfig变量中,具体取决于您的设置。运行该命令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

1

我做到了,它适用于osx:

在你的码头吃午餐

 nano ~/.bash_profile 

然后粘贴

 export PATH=~/.composer/vendor/bin:$PATH

按下控制键+ x

按y键

按回车/回车键


1

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

为我工作。


现有答案有什么改进?
MrTux

1

在Fedora上:

.composer目录中不包含某些作曲家文件箱,因此您需要使用以下命令找到它们:

locate composer | grep vendor/bin

然后将零件回显到.bashrc中

echo 'export PATH="$PATH:$HOME/{you_composer_vendor_path}"' >> ~/.bashrc

我很"/.config/composer/vendor/bin" 高兴!


0

这就是我在.bashrc文件中添加的内容,并且可以正常工作。

export PATH="$PATH:/home/myUsername/.composer/vendor/bin"


0

如果有人使用ZSH,则除以下几点外,所有步骤均相同:

  1. 定位文件 .zshrc
  2. 在底部添加以下行 export PATH=~/.composer/vendor/bin:$PATH
  3. source ~/.zshrc

然后尝试valet,如果要求输入密码,则一切正常。


-1

要解决此问题,请确保首先找到composer.phar的路径。

我的例子就是这样

alias composer="php /Users/Your-username/composer.phar"

转到cd Users>您的用户> Command ls,然后查看composer.phar是否存在,然后将上述行添加到.bash_profile中。确保将用户名更改为您自己的用户名。

希望这对你有帮助

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.