我可以在.bashrc中导出两次PATH吗?

我正在运行Ubuntu 12.04并尝试使用Heroku CLI以及新下载的AWS Elastic Beanstalk CLI工具.

我的.bashrc中已经有了这个代码:

### Added by the Heroku Toolbelt
export PATH="/usr/local/heroku/bin:$PATH"

我也想输出这个:

#for Elastic Beanstalk - madebyian
export PATH=$PATH:/opt/AWS-ElasticBeanstalk-CLI-2.6.0/eb/linux/python3/

我如何获得两个CLI工具和/或我的语法EDIT有什么问题:[如果有的话]?

您可以根据需要多次导出它,它没有任何区别.

在此上下文中的所有导出(除了由于=而更改变量本身)都标记为变量,以便将其导出到将来命令的环境中.

您可以根据需要进行标记.这两个命令的效果:

export PATH="/usr/local/heroku/bin:$PATH"
export PATH=$PATH:/opt/AWS-ElasticBeanstalk-CLI-2.6.0/eb/linux/python3/

将PATH标记为导出变量(由于您通常希望继承您的路径,因此可能已经这样做了)并将其设置为:

/usr/local/heroku/bin:$PATH:/opt/AWS-ElasticBeanstalk-CLI-2.6.0/eb/linux/python3/

其中$PATH是执行这些命令之前的路径.

您唯一需要注意的是订购.例如,如果/usr/local / heroku / bin包含一个名为ls的可执行程序,那么如果您尝试获取目录列表,那么这可能会让您感到困难.出于这个原因,我倾向于只将目录添加到路径的末尾.

或者,您可以通过提供别名或函数来使订单不那么永久,该别名或函数仅为当前会话更改您的Heroku首选路径.

请记住,由bash运行的文件是complex matter. .bashrc是针对交互式非登录shell运行的,因此可能无法在所有情况下运行(我,对于一个,通过在我的末尾调用.bashrc来解决这个问题) .bash_profile虽然有些人可能会畏缩这一点).

您可能最好在.bash_profile中设置(和导出)路径.

而且,如果你正在做的事情有问题(你的语法似乎很好但是由于缺乏信息可能还有其他我们无法辨别的问题),你应该执行以下步骤:

>在每个导出命令之前和之后回显$PATH以查看是否有东西填满了它.>确保路径中的每个组件实际存在(即,那里有正确的目录).

相关文章

用的openwrt路由器,家里宽带申请了动态公网ip,为了方便把2...
#!/bin/bashcommand1&command2&wait从Shell脚本并行...
1.先查出MAMP下面集成的PHP版本cd/Applications/MAMP/bin/ph...
1、先输入locale-a,查看一下现在已安装的语言2、若不存在如...
BashPerlTclsyntaxdiff1.进制数表示Languagebinaryoctalhexa...
正常安装了k8s后,使用kubect工具后接的命令不能直接tab补全...