Bashコマンドにエイリアスがないのはなぜですか?

Bashコマンドにエイリアスがないのはなぜですか?

端末で実行する場合:

alias

~/bashrcすべてのエイリアス(およびファイルで定義されている)のリストが~/.bash_aliases私の端末に表示されます。これは良いと予想通りです!

しかし、私が実行したとき:

bash -c "alias"

出力がないのでエイリアスもありません。まず、~/.bashrc2番目のケースでは、ファイルがソースではないと考えて次のように実行しました。

bash -c ". ~/.bashrc && alias"

しかし、無力で再出力はありません...

奇妙なことは、私が実行する時です。

bash -c ". ~/.bash_aliases && alias"

~/.bash_aliasesで定義されたエイリアスのみが表示されます。

誰かが少し光を照らし、ここで正確に何が起こっているのかを理解することができますか?

ベストアンサー1

エイリアスを定義するには、対話型シェルが必要です。

bash -i -c "alias"

おすすめ記事