无法使用自定义路径永久导出 PATH 变量

Mus*_*abe 3 command-line 14.04 composer laravel

我已经安装composerlaravel现在位于 unter的安装程序~/.config/composer/vendor/bin。我想laravel从任何地方直接用作命令,所以我尝试将目录添加到$PATH变量中。我可能可以为安装程序创建一个符号链接,/usr/local/bin但我仍然不知道为什么我不能永久设置它。我尝试了多种方法

  • export PATH=$PATH:~/.config/composer/vendor/bin
  • 将它添加到~/.profilelike 上面,没有export语句和引号中的值
  • 将它添加到~/.bashrclike 上面,没有export语句和引号中的值
  • 添加它以/etc/environment喜欢PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:~/.config/composer/vendor/bin"

在完成所有这些之后(对于 2 和 3,我什至做了source)它适用于当前会话,但是一旦我关闭Terminal并重新打开它,输出将始终是:

tzfrs@ubuntu:~$ laravel
laravel: command not found
Run Code Online (Sandbox Code Playgroud)

我的主目录中没有任何bash_loginbash_profile文件。

Flo*_*sch 5

  • export PATH=$PATH:~/.config/composer/vendor/bin 仅适用于当前会话。

  • In~/.profile~/.bashrcthe~/在引号内不起作用,要么省略引号,要么使用$HOME代替~/,例如

    export PATH=$PATH:$HOME/.config/composer/vendor/bin
    
    Run Code Online (Sandbox Code Playgroud)
  • /etc/environment不允许任何 shell 语法,所以既不工作~/也不$HOME工作。相反,您需要使用完整路径,例如

    PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/home/youruser/.config/composer/vendor/bin"
    
    Run Code Online (Sandbox Code Playgroud)