回答:
bashソースを変更しなくても、まったく同じ効果を達成できるとは思いません。しかし、あなたは近くに行けますが、うまくいけばあなたに十分に近いです。
bashのハッキーなプリコマンドフックとSECONDS
変数を組み合わせて、邪魔にならない方法でウォールクロック時間を表示できます。Ville Laurikariによる簡単な実装を次に示します。関数timer_start
およびtimer_stop
は、コマンドを開始する直前および次のプロンプトを表示する直前に実行されます。
function timer_start {
timer=${timer:-$SECONDS}
}
function timer_stop {
timer_show=$(($SECONDS - $timer))
unset timer
}
trap 'timer_start' DEBUG
PROMPT_COMMAND=timer_stop
PS1='[last: ${timer_show}s][\w]$ '
time
すべてのコマンドの完全な情報を取得するには、Dennis Williamsonのおかげです。
bind '"\C-j": "\C-atime {\C-e;}\C-m"'
コマンドを開始する代わりにCtrl+ を押すと、時間情報が表示されます。変更されたコマンドは構文的に正しくない場合があるため、再バインド(+ )は推奨されません。JEnterEnterCtrlM
最後のコマンドのウォールタイムをBashプロンプトに入力する方法を参照してください。そして、自動的にbashプロンプトで実行されたすべてのコマンドとshowタイミング?上のスタックオーバーフロー他の方法について(ほとんどはだけではなく、CPUの経過時間をリアルタイムに与えることに注意してください)。