Bash 未在 OSX 上获取 ~/.bash_profile

Bash 未在 OSX 上获取 ~/.bash_profile

我刚刚遇到这个非常奇怪的问题。当我启动 bash 时,我得到这两行:

-bash: fasd: kommandot finns inte
-bash: brew: kommandot finns inte

“kommandot finns inte”在瑞典语中表示命令不存在(您知道的越多!)。另外,我的提示没有着色等等。大部分问题似乎在我输入后就解决了

source ~/.bash/profile

另一个奇怪的事情是我突然无法获得颜色

ls -G

尽管当我重命名时,.bash_profile这个东西就消失了ls -G

不久前,这些都不是问题。

最近几天我配置了我的点文件。我所做的主要事情是移动其中许多(~/.bash_profile,,~/.bash_prompt~./aliases等)移动到点文件文件夹并将它们符号链接到主文件夹。我还用自制程序安装了一堆东西。我的 dotfiles 的 github 存储库是这里

我现在真的很困惑,非常感谢帮助!

答案1

您的主目录中应该有、.bash_profile、、以及许多其他影响 bash 的文件。此类文件的确切结构随操作系统和用户的个性化而变化。.bashrc.profile.bash_aliases.bash_logout

要获得完整的答案,您至少需要提供 和 if 的完整ls ~/.bash*输出。~/.profile~/.environment

如果您阅读以下内容将会有所帮助:选择,不同之处,启动,并且特别是命令。这将阐明交互式 shell、登录 shell 和脚本加载文件的区别。

之后,您需要检查所有相关文件链接是否到位。

请注意,例如,现有的~/.bash_login将阻止加载。~/.bash_profile

然后,对于您的特定操作系统 (OS X)读这个。它并不完美,但它显示了:用户如何插入if [ -f ~/.bashrc ]; then . ~/.bashrc; fi文件~/.bash_profile以确保~/.bashrc加载。

所以:这不是一个简单的答案,但 shell 启动设置从来都不是简单的。
请查看文件内部以查找哪个文件加载了什么。

答案2

我很愚蠢......问题在于出口。我忘记了我将 PATH 中 /usr/local/bin 的定义从 /etc/paths 移至 ~/.exports 。我所要做的就是首先在 ~/.bash_profile 中获取 ~/.exports 。

ls 颜色问题来自GNU 核心实用程序我通过自制程序安装的。显然它不支持 G 标志,就像 os x 的 ls 一样。

相关内容