~/.bash_profile到底什么时候执行???

为当前最终发行版之前的所有版本提供支持
回复
barryzhen
帖子: 6
注册时间: 2006-11-29 13:07
送出感谢: 0
接收感谢: 0

~/.bash_profile到底什么时候执行???

#1

帖子 barryzhen » 2007-04-27 13:29

我安装完oracle XE 10.2.0.1 之后
按照说明文档,在~/.bash_profile 中添加了
. /usr/lib/oracle/xe/app/oracle/product/10.2.0/server/bin/oracle_env.sh
这条命令以便系统启动后自动设置oracle环境变量
但是重新启动之后,我用echo命令查看环境变量$ORACLE_HOME
什么都没有显示
然后,我又将
. /usr/lib/oracle/xe/app/oracle/product/10.2.0/server/bin/oracle_env.sh
从~/.bash_profile中移到~/..bashrc中
重新启动之后,用echo命令可以看到$ORACLE_HOME环境变量的值
为:/usr/lib/oracle/xe/app/oracle/product/10.2.0/server
. /usr/lib/oracle/xe/app/oracle/product/10.2.0/server/bin/oracle_env.sh
得到执行
我的感觉就是~/.bash_profile在启动的时候并没有执行

我想知道,~/.bash_profile到底什么时候执行?
它与~/.bashrc的区别?
登录shell与非登录shell是什么??
barryzhen
帖子: 6
注册时间: 2006-11-29 13:07
送出感谢: 0
接收感谢: 0

#2

帖子 barryzhen » 2007-04-27 14:08

偶已经大致知道了原因,如下

~/.bash_profile 是输入帐号密码后启动该 shell的,但是它要求是“login shell mode”模式才读取,我们平时的X下面登录时不一样。所以按下 ctrl-alt-f1 于 console 登入,这是属于 login shell mode,这时候 ~/.bash_profile 会读取。

若是要求 X 下开终端机要自动执行的shell,应该是放在 ~/.bashrc 才对。

呵呵~~~~~~~~~~`
头像
eexpress
帖子: 58428
注册时间: 2005-08-14 21:55
来自: 长沙
送出感谢: 4 次
接收感谢: 256 次

#3

帖子 eexpress » 2007-04-27 14:24

登录一个tty。执行一次。

X下面是虚拟的无数个,睡觉晕的
● 鸣学
回复

回到 “老旧版本支持”