strace
プロセスの動作を追跡するために使用しますbash
。目的は、bash
設定ファイルがロードされる順序を見つけることです。
次のコマンドを実行していますzsh
。
strace -e openat bash
このコマンドを実行すると、新しいシェルが表示されますが、bash
そのようなことが発生したくありません。bash
実際に新しいインタラクティブシェルを起動せずにコマンドを追跡する方法はありますかbash
?
オンラインで検索しましたが、何も見つかりませんでした。exec
:を使用しようとしていますが、strace -e openat "$(exec bash)" 2>&1
シェルはまだbash
fromに変わりますzsh
。
答え1
bash
即時シャットダウンを要求し、強制的に対話型および/またはログインシェルのように機能させることができます。
strace -e openat bash -i -c exit
対話型ログインシェルのように動作-l
するように追加されました。bash
終了時に読み取ったファイル(.bash_logout
など)も表示されます。