.bashrc没有被执行


10

我有一个用户(非root用户),该用户的~/.bashrc文件中带有一些别名。

但是看起来文件不是在登录时执行的。如果我这样source ~/.bashrc做了,它就会按照预期的那样工作。但是不~/.bashrc应该在每次登录时都执行吗?

权限设置为644(与我的root用户的权限相同.bashrc,效果很好)。文件归相关用户所有。


这是ksh用户在处理bash时遇到的烦恼之一。ksh在登录shell中自动提供.kshrc,但bash不在同一上下文中提供.bashrc。您必须明确地做到这一点。
jlliagre

Answers:


18

~/.bashrc用于非登录交互式shell。登录外壳程序源~/.bash_profile(或~/.bash_login~/.profile)。在此采购货源~/.bashrc将使您具有通用设置。


1
或者来源.bash_profile.bashrc,这可能是有意义的,当你主要使用交互shell。
janmoesen 2011年

我觉得有必要为登录外壳做一些事情,而交互式非登录问题并没有做到这一点。
AProgrammer 2011年

因此,“ 可能有意义”:我知道它可能会倒退。:-)
janmoesen

运行非交互式作业时,是否可以将redhat系统配置为忽略.bashrc?我使用了一个似乎实际上使用.bash_profile的群集(然后我加载了.bashrc)。如果没有.bash_profile,则作业无法在rc文件中找到我添加到PATH的内容
user632657
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.