2

一部の virtualenvwrapper 関数定義がシェルにどのように取り込まれているかを発見しようとしています。(より具体的には、それらは古いバージョンであり、それらを取り除きたいので、新しいバージョンを入れます。)

~/.bashrc にあるものを入手するために grep しました。

env -i HOME=/tmp bash

には定義がありません。これは本当です。したがって、システムのbashrcではないと確信しています。

そのため、シェル ソースをセットアップするときに bash を使用して、次のような多数のファイルを作成します。

source .bashrc

source .bash_aliases

等々。しかし、ソースファイルの名前をbashに出力させる方法はありますか?

4

2 に答える 2

2

デバッグモードで bash を実行するのはどうですか?

bash -x

-l でログインを模倣することもできます

bash -x -l

これで、物事がどのように起こるかを確認できます。

また、配列変数BASH_SOURCEが役立つかどうかも確認してください。

于 2013-08-14T13:43:29.670 に答える
2

やっている

set -x

source .bashrc

実行中のコマンドのトレースを提供します。

出力からフィルタリングするには、次のようsourceに言います

source .bashrc 2>&1 | grep source
于 2013-08-14T13:35:21.643 に答える