任何人都可以告诉我什么是登录shell和交互式shell以及它们各自读取哪些配置(etc/profile,etc/bashrc,.bash_profile ...)?登录shell和交互式shell?
我看到这样的一些解释: 登录shell是其参数为零的第一个字符是 - 的一个,或者是一个以--login选项开头的登录shell。 一种交互式外壳是一个没有非选项参数和 开始,而不需要-c选项,其标准输入和错误都连接到 终端(如通过isatty(3)确定),或者一个开始与-i 选项。 PS1被设置,$ - 包括我如果bash是交互式的,允许 shell脚本或启动文件来测试这种状态。
但是,这更困惑!
感谢您的提示,但是当我调用bash(已经登录)时,它是一个交互式shell,它应该读取.bashrc的权利?但我的.bashrc不是,除非我手动来源。我不知道为什么? – shi70 2012-07-17 04:05:09
是的,应该在这一点上阅读。它是否直接位于你的主目录('ls〜/ .bashrc')?是否有任何'BASH_ *'种类的环境变量被设置? “bash”究竟是如何调用的,以及从哪里('哪个bash')? – 2012-07-17 04:14:47