我在执行一些命令的时候经常会出现如下的类似的问题: 比如,我要 bundle install 操作,在窗口中出现如下的语句, 程序 'bundle' 已包含在下列软件包中:
不知道如何解决这个问题,以前偶尔也出现过这个问题,有时候重新开一个窗口就好了,但是这次很频繁,求解释?
环境变量问题 , 一定要确保 bundle 所在的位置在 $PATH 这个变量中 .
bundle
$PATH
#1 楼 @song940 不理解,能具体给个参考么?
#1 楼 @song940 如何设定呢?linux 新手~
先找到 bundle 位置,
~$ which bundle /usr/local/bin/bundle
然后
echo "export PATH=$PATH:/usr/local/bin" >> ~/.bashrc
或者
还有个办法 . ln -s /usr/local/bin/bundle /usr/bin/bundle
ln -s /usr/local/bin/bundle /usr/bin/bundle
再或者 用 alias .
alias
再再或者,你应该 Google 一下 , 了解下为什么会这样。
Google
#4 楼 @song940 非常感谢,是否就是和 window 下面添加环境变量的意思。 这句话如何解释?
echo "export PATH=$PATH:/usr/local/bin" >> .bashrc
是这样 ..
bash 你知道的吧 ,就是用户的 Shell , 一般系统默认都是这个,.bashrc 是 bash 这个命令的 用户配置文件 , bash 每次启动时会检测这个文件并执行里面的配置 .
bash
Shell
.bashrc
用户配置文件
再来说说 export PATH=$PATH:/usr/local/bin 其实这个就是说定义一个变量 , $PATH 这个变量存储一些文件目录 , 这些目录用 : 分开。你可以用 echo $PATH 看看 .每当你执行命令时,比如 vi , 他就会去 $PATH 这些目录中查找叫做 vi 的文件 . 找到就执行了 .. 找不到就提示你之前遇到的问题 .
export PATH=$PATH:/usr/local/bin
:
echo $PATH
vi
现在你应该知道我们为什么要这么做了吧 , 就是在每次启动 bash 的时候提供这个路径让他去找 .
#6 楼 @song940 了解啦,感谢前辈,这一块是知识盲点,http://ruby-china.org/topics/4817 感谢指导!