【问题标题】:add permanet PATH in ubuntu在 ubuntu 中添加永久路径
【发布时间】:2021-04-05 04:24:41
【问题描述】:

您好,我正在尝试在 ubuntu (18.04.5) 中添加永久路径,我已尝试使用 .profile

nano ~/.profile 
export PATH="$PATH:~/mytools/my_scripts"

然后保存和source ~/.profile,一切都很好,但是如果我打开一个新的终端o重新启动ubuntu,它就消失了,脚本不再可用,我必须添加一个新的源,这不是对我很好。

我也尝试过 /etc/enviroment

sudo nano /etc/enviroment

PATH="/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin:~/mytools/my_scripts"

然后

source /etc/enviroment 

同样的问题,每次打开新终端时 /mytools/my_scripts 中的脚本都不再可用。

我不知道我是否使用/做错了什么,如何永久添加我所有的个人脚本

在 Mac 中,只需添加 .bash_profile 的路径,然后添加源文件就可以了,仅此而已,我不需要每次需要我的个人脚本/工具时都需要源代码。

如何在 Ubuntu 中解决这个问题????

我只需要编辑哪个文件???

谢谢

【问题讨论】:

  • 您是说您对~/.profile 所做的更改会在您重新启动时被删除?如果是这样,那么问题是什么导致了这种情况。也许您在另一个启动脚本中有一些东西正在重新创建它。将~/.profile 复制到另一个文件,然后重新启动,然后将其与副本进行比较。检查时间戳 (ls -l)。如果您使用的是 bash(如果您没有更改它,则可能是这样),那么在 Mac 上更新 .bash_profile 应该在 Ubuntu 上以相同的方式工作。
  • 顺便说一句,我不会对像 /etc/environment 这样的系统级文件进行特定于帐户的更改(顺便说一句,您在问题中拼错了其名称)。

标签: ubuntu path profile


【解决方案1】:

第一个解决方案:

尝试在您的.profile 中将~/mytools/my_scripts 替换为/home/your_username/mytools/my_scripts,或者像这样使用$HOME 变量。

PATH="$HOME/mytools/my_scripts:$PATH"

第二个解决方案

将所有脚本复制到/usr/bin

cp ~/mytools/my_scripts/* /usr/bin/

【讨论】:

  • 我不会将特定于帐户的脚本复制到系统范围的目录中,例如 /usr/bin。如果您想要个人二进制文件,请将它们放在您的主目录下的目录中。
  • @KeithThompson 如果脚本名称是唯一的可以接受吗?不然怎么会气馁?
  • 非常感谢它与 PATH="$HOME/mytools/my_scripts:$PATH" 一起使用,但我不知道为什么使用 /etc/environment 识别 script.py 但当时执行,它不起作用,它说“找不到命令”,但是使用 .prifile 它可以正常工作....谢谢
  • @Samy 我不知道$HOME/etc/environment 中会如何解释。它可能扩展到当前用户的主目录。
  • Unix 被设计为一个多用户系统,即使很多安装都是为一个人使用的。我发现明确区分系统范围的信息和用户特定的信息很有用。如果您希望自己的~/my_scripts 出现在您的$PATH 中,则无需在/etc/environment 中这样做。 (如果系统真的是多用户的,~/my_scripts 可能不会存在于另一个用户帐户 - 或者,它可能存在但不是用户想要的 $PATH
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-05-18
  • 2012-08-28
  • 1970-01-01
  • 2011-04-12
  • 2018-04-14
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多