首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我可以在.bashrc中导出两次路径吗?

我可以在.bashrc中导出两次路径吗?
EN

Stack Overflow用户
提问于 2014-03-20 01:35:51
回答 1查看 7.2K关注 0票数 8

我正在运行Ubuntu12.04,并试图同时使用Heroku以及新下载的AWS工具。

我的.bashrc中已经有了以下代码:

代码语言:javascript
复制
### Added by the Heroku Toolbelt
export PATH="/usr/local/heroku/bin:$PATH"

我也想出口这个:

代码语言:javascript
复制
#for Elastic Beanstalk - madebyian
export PATH=$PATH:/opt/AWS-ElasticBeanstalk-CLI-2.6.0/eb/linux/python3/

如何获得CLI工具和/或语法编辑的问题:如果有的话

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-03-20 01:38:32

您可以任意多次导出它,它不会产生任何影响(显然,在第一次导出之后)。

export在此上下文中所做的一切(除了由于=而更改变量本身之外)都是标记变量,以便将其导出到未来命令的环境中。

你可以随心所欲地标记它。这两个命令的效果:

代码语言:javascript
复制
export PATH="/usr/local/heroku/bin:$PATH"
export PATH=$PATH:/opt/AWS-ElasticBeanstalk-CLI-2.6.0/eb/linux/python3/

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

代码语言:javascript
复制
/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运行的,所以不可能在所有情况下都运行(例如,我通过在我的.bash_profile末尾调用.bashrc来修复这个问题,尽管有些人可能对此感到畏缩)。

最好在.bash_profile中设置(并导出)路径。

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

  • echo $PATH在每个export命令之前和之后,以查看是否有什么东西在填充它。
  • 确保路径中的每个组件实际存在(即,您在其中有正确的目录)。
票数 18
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22521753

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档