2012-08-07 161 views
0

我正在尝试将一个文件夹添加到Linux中的PATH中。我想通过脚本自动化它。 这是我写的剧本:通过脚本设置永久路径

#!/bin/sh 
echo "Setting PATH..." 
echo "export PATH=$PATH:/opt/mysoftware/scripts/client" >> ~/.bashrc 
. ~/.bashrc 

即使在执行脚本之后,路径没有得到更新。 但我可以看到bashrc文件已经更新。

当我注销并登录时,PATH被更新。

可能是什么问题?

回答

1

您正在子shell中运行脚本。尝试采购它:

source script.sh 
+0

This Works,Thanks !! – cmn 2012-08-07 11:13:39

0

如果您想要在.bashrc中删除脚本。你现在完成了。 ;-)

另一种方法是把它放在一个函数中。我曾经有两个功能, use()forget()在我的ksh环境中完成。

use /opt/python将相当于PATH=/opt/python/bin:$PATH,一次。 第二次运行无能为力。即使use python也会在/ {usr,opt}/python/{bin,sbin}的几个 位置中查找,并将第一个匹配插入PATH。

相反,forget python会再次从PATH中删除/opt/python/bin: