macos - 如何修复终端在 OS X Lion 上不加载 ~/.bashrc

标签 macos bash terminal osx-lion

<分区>

每当我使用 Cmd + T 在终端中打开一个新选项卡时,它会在与前一个选项卡相同的目录中打开 bash。当我在 ~ 目录时,这工作正常,但如果我在其他任何地方,加载 .bashrc

时会出错
Last login: Sat Oct 15 21:10:00 on ttys002
-bash: .bashrc: No such file or directory
Jakub-Arnolds-MacBook-Pro:projects darth$ 

看起来 .bashrc 是通过相对路径而非绝对路径加载的,因为如果我执行 source ~/.bashrc,一切都会顺利进行。

loaded bashrc

我认为这是一个与 OS X Lion 相关的问题,因为在从 Snow Leopard 升级之前,我没有遇到同样的问题。但这可能是终端总是在 ~ 打开造成的,我不记得它是否试图打开同一个目录。

但问题仍然存在,我如何通过绝对路径而不是相对路径使终端加载 ~/.bashrc

最佳答案

终端打开一个登录 shell。这意味着,~/.bash_profile 将被执行,~/.bashrc 不会。

大多数系统上的解决方案是“要求”~/.bash_profile 中的~/.bashrc:只需将此片段放入你的~/.bash_profile:

[[ -s ~/.bashrc ]] && source ~/.bashrc

关于macos - 如何修复终端在 OS X Lion 上不加载 ~/.bashrc,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7780030/

相关文章:

objective-c - OSX 服务和上下文菜单

c - 指针转换期间运行时的 EXC_BAD_ACESS

linux - 如何使用 shell 脚本连接 2 个 csv 文件?

python - 为什么 Windows 会报告将随机行数写入具有与 osx 不同的 float-rounding 的文件所花费的时间?

python - 无法在 mac OS X mountain lion 上导入 numpy

linux - shell 脚本: Redirect output of program to changing files

python - 带有来自终端的参数的 bash 程序

linux - 重命名当前 gnome 终端的别名

macos - playn 不玩 mvn,具有讽刺意味的是

c - 如何使用 gdb 调试带有核心转储的代码?