如何更新$PATH

3 投票
7 回答
3982 浏览
提问于 2025-04-16 04:14

我正在写一个用python和pygtk做的应用程序,这个程序会在$HOME的某个文件夹里添加一些自定义的脚本(比如说~/.custom_scripts)。

我想把这个文件夹放到$PATH里。这样每次这个python应用添加脚本的时候,用户在打开终端(比如gnome-terminal)时就能立刻使用这些脚本。

你觉得我应该把这个$PATH的设置放在哪里比较好呢?是放在.bashrc里,还是放在/etc/profile.d里,或者其他地方?这样做有什么好处和坏处呢?

举个例子,如果我在/etc/profile.d里添加一个脚本来更新路径,那个路径要等我重新登录后才会生效。

谢谢!

7 个回答

2

.profile 文件是一个不错的选择,如果你是为每个用户单独安装的话;而 /etc/profile.d 则适合系统范围的安装。(当然,你需要有管理员权限才能这样做。)

你的安装程序无法更改当前终端的路径(除非是通过 source 命令来运行,这样做就有点奇怪了。)

2

对于放在 $HOME 目录下的脚本,通常你会使用 $HOME/bin 文件夹,因为这个文件夹通常已经在系统的路径中。

1

每次打开gnome-terminal时,系统都会读取~/.bashrc这个文件(前提是用户的SHELL设置为/bin/bash)。

记得检查一下os.environ['PATH'],看看这个目录是否已经被添加过,这样脚本就不会重复添加了。

撰写回答