Chinaunix

标题: bashrc ,profile有什么不同? [打印本页]

作者: THEBEST    时间: 2006-05-14 19:08
标题: bashrc ,profile有什么不同?
/etc下有bashrc ,profile公用配置脚本,在用户目录下也可以修改.bashrc .profile来设置一些变量。
好像在两个文件中都一样,比如在.bashrc中可以直接设置一些变量,而在.profile中也可以设置变量然后在.bashrc启用.profile脚本,为什么要这样呢?用一个不就好了么?
作者: kenduest    时间: 2006-05-14 20:05
原帖由 THEBEST 于 2006-5-14 19:08 发表
/etc下有bashrc ,profile公用配置脚本,在用户目录下也可以修改.bashrc .profile来设置一些变量。
好像在两个文件中都一样,比如在.bashrc中可以直接设置一些变量,而在.profile中也可以设置变量然后在.bashrc启用.profile脚本,为什么要这样呢?用一个不就好了么?


这些问题其实要回答很快,不过我会建议你先自己看一下 bash 的 manpage 文件,先把所谓 login shell 与 non-login shell 的差别弄清楚,包含其中里面还有 interactive mode 与 non-interactive mode 的差异也是,这样就会知道不同环境下读取设定档案差异。

==
作者: THEBEST    时间: 2006-05-14 21:19
什么是交互式和非交互式?non-login又是什么情况 ?
作者: xxjoyjn    时间: 2006-05-14 22:14
原帖由 kenduest 于 2006-5-14 20:05 发表


这些问题其实要回答很快,不过我会建议你先自己看一下 bash 的 manpage 文件,先把所谓 login shell 与 non-login shell 的差别弄清楚,包含其中里面还有 interactive mode 与 non-interactive mode 的差异也 ...


  2楼兄弟是个很牛的人,
作者: wikingki    时间: 2006-05-14 22:21
赞一个
作者: THEBEST    时间: 2006-05-15 19:03
原帖由 THEBEST 于 2006-5-14 21:19 发表
什么是交互式和非交互式?non-login又是什么情况 ?

能否帮忙解释一下?
作者: dowell3000    时间: 2006-05-15 19:22
刚google来的

一个successful的login使用/bin/login并读取/etc/passwd后---------->执行/etc/profile----->寻找/home/user/.bash_profile

以上是login shell的读取过程.

对于non-login shell (也就是不需要输入username and passwd 马上能得到$, 例如直接在命令行输入bash, 启动xterm等), 先读取父环境的参数然后读取/home/user/.bashrc
作者: xxjoyjn    时间: 2006-05-15 20:11
谢谢赞助
作者: THEBEST    时间: 2006-05-15 20:45
什么是交互式和非交互式?
作者: dowell3000    时间: 2006-05-15 20:59
像rc3.d rc5.d下的应该属于非交互式模式 我猜的

总结下:
就是登录的时候,系统才会读/etc/profile,如果直接比如csh换到bash系统会读取/etc/bashrc的(其实是通过~user/.bash_profile或~user/.bash_basrc的来调用/etc/bashrc)

不知道理解正确与否,二楼公布答案




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2