为什么在启动到电脑后需要执行source〜/ .bash_profile?

我已经安装了octopress,但为了使它运行(只是在启动电脑后)我需要做的每一次:

source ~/.bash_profile 

除非我这样做,我运行时出现错误:

  rake generate 

错误:

  bash: /usr/local/bin/rake: /usr/bin/ruby1.9.1: bad interpreter: No such file or directory 

我有Ubuntu 12.0 LTS,我已经经历了这个问题 ,但由于我没有意识到shellconfiguration文件和shell的基础知识,我无法理解答案。 请赐教。

我脑海中唯一的解决scheme似乎有一个cron作业计划重新启动,所以每次我重新启动,它会做一个源〜/ .bash_profile。 请build议是否有其他解决scheme。

谢谢!

当调用它时,shell可能会执行许多配置文件。 总的来说,它们包含别名(命令的替代名称),路径调整和变量初始化; 在你的情况下,它会将shell警告到一个命令(程序)的位置,否则它不会在PATH环境变量中找到它。

.bash_profile是在启动登录shell时调用的,您可能不会这样做。 进入你的主目录(cd〜),输入ls -la,你会看到一个.bashrc配置文件。 那个在你启动一个shell的时候被调用。 尝试使用您选择的文本编辑器打开它,然后添加您输入的命令作为.bashrc文件的最后一行。 这应该允许您不再需要以交互方式输入命令,因为它将在启动shell时调用。