bashrcの機能はbash_profileとどう違うのですか?

bashrcの機能はbash_profileとどう違うのですか?

IntelliJが私のコードをコミットしたくないので、私はずっと狂っています。私の代わりにexport GPG_TTY=$(tty)私を入れました。エコーは正しいパスで応答しますが、それでもエラーが発生します。.bash_profile.bashrc$GPG_TTYgpg: failed to sign the data

私が収集したところ、.bash_profileBashはインタラクティブログインシェルで呼び出されたときに読み込まれ、実行され、インタラクティブな非ログインシェルで呼び出されたときに読み込まれ、実行され.bashrcます$PATH.bash_profileまたは少なくとも私はそう思った。 2つの機能的な違いが何であるかを知りたいです。私のプロフィールでは動作しませんが、rcで動作するのはなぜですか?

答え1

解決策:に入れてexport varから.bashrc呼び出し.bashrcてください.bash_profile

はい、ログイン状態とログインしていない状態の違いがあります。 GUI以外のコンピュータにログインするか、GUI以外のコンピュータにログインすると、bashログインモードになります。ただし、一度ログインすると、すべての新しいbashインスタンスは非ログインモードで起動します。bashssh

GUIデスクトップがある場合は、代わりにWMにログインしますbash。したがって、ログインモードにすることはできませんbash(特に呼び出しオプションを使用しない限り--login)。したがって、.bash_profileGUIがあるワークステーションでもこれは意味がありません。
ただし、そのコンピュータにユーザーとしてログオンしているssh場合、またはWMがハングして回復手順を開始する必要がある場合は、それを持つことができます。

もちろん公式文書は必ずお読みください。 https://www.gnu.org/savannah-checkouts/gnu/bash/manual/bash.html#Bash-Startup-Files

関連情報