gpt4 book ai didi

linux - 无法将文件和目录添加到 PATH

转载 作者:太空宇宙 更新时间:2023-11-04 11:07:03 26 4
gpt4 key购买 nike

我有一个程序,我们称它为 exampleProg,在我的/opt 目录中,我想从任何目录运行它,而不仅仅是:

/opt/radFolder/exampleProg

应该是一个简单的任务,我以前在不同的计算机上做过几次。我四处搜索,找到的说明包括:

  • 编辑.bash
  • 编辑.bashrc
  • 编辑 .profile(另一个 stackoverflow 回答说,虽然它曾经有效,但它不再起作用。)
  • 编辑/etc/environment/

使用 PATH="$HOME/bin:$PATH:/opt/radFolder/:" 或仅添加 /opt/radFolder 位。

但它们似乎都不起作用。我遇到的问题是似乎还没有一个普遍认可的解决方案。我已经尝试了很多,以至于我认为我的一项更改阻止了适当的更改生效。有人能帮我一劳永逸地解决这个问题吗?非常感谢。

我正在运行 ubuntu 14.04 LTS x64。

最佳答案

首先,了解将内容写入这些文件并不意味着所有内容都会立即全局更改。事实上,在获取文件(通过 .source)之前,没有任何更改,即使这样,环境更改也仅适用于当前 shell(以及随后创建的子 shell) ,如果使用了export)。

INVOCATION,靠近 man bash 的顶部,详细说明了哪些文件在何时自动获取。总结:

  • ~/.bashrc 被读取用于新的非登录、交互式 shell,例如,当您打开 GUI 终端时。在许多系统上,该文件默认依次为 /etc/bashrc

  • /etc/profile~/.bash_profile~/.profile 由交互式 login 读取 炮弹。

添加到 ~/.bashrc 应该是有效的,但它只适用于随后调用的、交互式的、非登录 shell(及其子 shell,如果 $PATH被导出)。但是,由于它很容易被重复获取,因此使用它添加 到现有变量(与 $PATH 一样)会产生重复的连接 ( see here )。

第二个类别 .profile 的一个问题是,如果您使用 GUI 登录,显示管理器可能不会获取它,但它会让您登录,意思是,您永远不会调用登录 shell,因此这些都不会被获取。如果是这种情况,从 ~/.xsession 获取它们应该可行(这在 /etc/X11 中有系统范围的关联)。

关于linux - 无法将文件和目录添加到 PATH,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24853277/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com