そのパーティにはもう出遅れましたが、ルート シェルをスポーンする代わりにできることは次のとおりです。
profile
Ctrl-c-ing sudo を実行すると出力バッファー (したがって出力) が失われるため、プロバイダーを使用して結果をダンプするようにスクリプトを書き直すことができます。
プロファイル プロバイダーは、一定の指定された時間間隔ごとに発生する時間ベースの割り込みに関連付けられたプローブを提供します。
dtrace -s /dev/stdin
syscall::read:entry /execname != "dtrace"/
{
@reads[execname, fds[arg0].fi_pathname] = count();
}
profile:::tick-2sec
{
printa(@read);
trunc(@read);
}
Ctr-d

私はブレンダンの答えに同意しますが、私はかなりずさんで無知なチャップであり、遅かれ早かれそのルートシェルの使用に取り組むことになるため、永続的なルートシェルで作業することは常に避けようとしますが、これは悪い考えです.
MacOS X の開発者がこの sudo の問題をすぐに修正してくれることを願っています。
さらに、sudo が dtrace の動作を妨げると主張する人が何人かいますが、私は言いたいです。ctrl-cを使用して生成されたプロセスからファイル記述子が失われたことを除いて、私はその問題に遭遇したことはありません。