2

每次我安装一个新程序时,我必须将它的子目录添加到 PATH 中吗?还是此声明涵盖所有子目录?:PATH=$PATH:~/local/bin 在我的.bashrc

如果我必须将每个子目录添加到 PATH 中,是否有可以放入的自动化解决方案.bashrc?这样在启动时它会根据 PATH 检查所有子目录,如果 FALSE 更新?

4

2 回答 2

1

如果确实是这样的情况下您有目录$HOME/local/bin

$HOME/local/bin/atool
$HOME/local/bin/btool
$HOME/local/bin/ctool

并且您希望这些中的每一个都在您的系统中,$PATH然后您可以在您的.bashrc或可能的您的系统中执行以下操作,.bash_login因为您不希望每次从现有会话开始 bash 会话时都执行此操作。

MYLOCALPATH=`find $HOME/local/bin -type d -depth 1 | paste -s -d : -`
PATH=$PATH:$MYLOCALPATH

如果不是这种情况,那么也许您可以更具体地了解您没有发生的事情,因为通常会安装 exes <somewhere>/bin,即使它们不是出于版本控制的原因,它们通常也会链接到那里。

于 2013-02-05T23:14:04.000 回答
0

通过包管理器安装或make install没有特殊./configure选项的程序将自行安装或至少在标准二进制目录之一中添加符号链接,例如/usr/bin/or 有时/usr/games/binor /usr/local/bin

您不需要将程序的数据目录添加到路径中。

于 2013-02-05T23:07:34.647 回答