Bash は OSX から ~/.bash_profile を取得しません。

Bash は OSX から ~/.bash_profile を取得しません。

ちょうどこの非常に奇妙な問題に直面した。 Bashを起動すると、次の2行が表示されます。

-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など)を次に移動することでした。ファイルをクリックフォルダを作成し、それをデフォルトフォルダにシンボリックリンクします。私もhomebrewを使ってたくさんのものをインストールしました。ドットファイルの私のgithubリポジトリは次のとおりです。ここ

私は今本当に混乱しています。助けてくれて本当にありがとうございます!

答え1

ホームディレクトリには、.bash_profilebashに影響を与える、、、、および他の多くのファイルが必要です。これらのファイルの正確な構造は、オペレーティングシステムとユーザーの個人設定によって異なります。.bashrc.profile.bash_aliases.bash_logout

完全な答えを得るには、少なくともls ~/.bash*and if の完全な出力を提供する必要があります。~/.profile~/.environment

次の内容を読んでください。選ぶ違い始める、特に注文する。これは、対話型シェル、ログインシェル、およびスクリプトロードファイルの違いを明確にします。

次に、関連するファイルリンクがすべて正しい場所にあることを確認する必要があります。

たとえば、既存のアイテムは~/.bash_loginロードを防ぎます。~/.bash_profile

その後、特定のオペレーティングシステム(OS X)についてこれを読んでください。完璧ではありませんが、ユーザーがif [ -f ~/.bashrc ]; then . ~/.bashrc; fiファイルを挿入してロードできるように~/.bash_profileする方法を示します。~/.bashrc

したがって、これは単純な答えではありませんが、シェルの起動設定は決して単純ではありませんでした。
どのファイルが何をロードしたのか、ファイルの内部を見てください。

答え2

愚かだ…問題は出口だ。 PATHの/usr/local/bin定義を/etc/pathsから~/.exportsに移動したことを忘れました。私がしなければならなかったのは、最初に~/.bash_profileから~/.exportsを取得することだけでした。

ls 色の問題は以下から来ています。GNUコアユーティリティ私はホームブレークを通して設置しました。明らかにos xのlsのようにGフラグをサポートしていないようです。

関連情報