如何将目录添加到MANPATH或INFOPATH?
我想我理解如何将目录添加到PATH中的说明? 关于将目录添加到$ PATH。 但我不明白如何将目录添加到$ MANPATH或$ INFOPATH。
另外 – 在google搜索帮助我注意到有时方向说export PATH=/usr/share/lib/something:$PATH
,有时他们说export PATH=$PATH:/usr/share/lib/something
。 这是什么?
-
这两个几乎相同:
export PATH=/usr/share/lib/something:$PATH export PATH=$PATH:/usr/share/lib/something
唯一的区别是第一个将目录添加到前面,第二个将它放在
$PATH
的当前目录之后。 只有当/usr/share/lib/something
中的命令在$PATH
一个目录中具有相同的名称时才重要。 -
要根据需要从您发布的链接向
$MANPATH
或$INFOPATH
添加目录,请通过更改链接内的配置文件来实现。它说打开全球版的
bash.bashrc
:sudo vi /etc/bash.bashrc
并在最后添加:
PATH=/usr/local/texlive/2010/bin/x86_64-linux:$PATH; export PATH MANPATH=/usr/local/texlive/2010/texmf/doc/man:$MANPATH; export MANPATH INFOPATH=/usr/local/texlive/2010/texmf/doc/info:$INFOPATH; export INFOPATH
这设置
$PATH
,$MANPATH
和$INFOPATH
。 它还告诉您使用以下命令编辑/etc/manpath.config
:sudo vi /etc/manpath.config
并添加
MANPATH_MAP /usr/local/texlive/2010/bin/x86_64-linux /usr/local/texlive/2010/texmf/doc/man
在
# set up PATH to MANPATH mapping
下面# set up PATH to MANPATH mapping
。
如果你不确定这个,请先做一个备份(从来不是坏事):
sudo cp /etc/bash.bashrc /etc/bash.backup_$(date +"%Y_%m_%d").bashrc sudo cp /etc/manpath.config /etc/manpath.backup_$(date +"%Y_%m_%d").config
奇怪的字符串变为当前日期。 如果你陷入困境,只需将备份复制回原始文件:
$ touch test1 $ cp test1 test1.$(date +"%Y_%m_%d") $ ls test1 test1.2014_11_14
如果您的手册页位于/usr/local/myproject/man
,那么您需要做的就是将其添加到/etc/manpath.config
(的末尾):
MANDATORY_MANPATH /usr/local/myproject/man
x:y:z:$PATH
或$PATH:x:y:z
?
几乎不同。 $PATH
包含:
bash(shell /终端)应该检查程序的地方的分隔列表。
例如,如果您按照终端了解这意味着查看$PATH
的第一个,第二个,第三个元素的方式键入cat
,则保存它找到的第一个位置以便稍后调用cat
。
如果我在两个不同的地方有两个不同版本的程序,其中一个是首选, $PATH
告诉shell以错误的顺序搜索,那么就有问题了。 否则,没问题。
出口
打开终端并输入
echo $a a=5 echo a echo $a
你会看到a=5
设置变量值, $a
指的是变量名,而不是值。
打开第二个终端并输入echo $a
。 它应该再次为空白。
export
和赋值( =
)之间的区别在这里解释: https : //stackoverflow.com/questions/1158091/defining-a-variable-with-or-without-export 。