現在私のbashプロンプトは次のとおりです。
$ echo $PS1
# \[\e[34m\][\t]\[\e[0m\] \[\e]0;\w\a\]\[\e[34m\]\u@\h: \[\e[34m\]\w\[\e[0m\]\n$
$
問題は、\t
プロンプトがレンダリングされる時間だけが表示されることです(最後のコマンドの完了時間に非常に近いです)。
私にとっては、現在のコマンドプロセスの開始時刻を表示する方が便利です。これを行う方法はありますか?
答え1
私が正しく理解した場合は、現在のコマンドを起動したときにプロンプトを変更したいと思います。私はBashにプロンプト変更機能がないと思いますが、見つけることができれば(複数のコマンドでは簡単ではありません)、プロンプトを再描画できます。
zshはこの機能を使用しますprecmd
。 Bashには同様の機能はありませんが、ハッキングできます。
答え2
いいえ、プロンプトが表示された時点とコマンドを入力してからキーを押すまでENTERの間に時間がある可能性があるためです。
コマンド以外の項目のエイリアスを設定できます(例:Deut)は時間を表示した後に渡されたコマンドを実行します。毎回使用する必要があることを覚えておく必要があり、設定したシステム(およびアカウント)でのみ機能します。