質問: 「script」コマンドを使用して、記録されたセッションにタイムスタンプを追加します 私の.bash_profileには、すべての端末の入力/出力をsession.logファイルに自動的に記録する_script -a -t 0 session.log_があります。このコマンドには、別のファイルに時差を記録するためのオプションのフラグが付属していることは知っていますが、session.log行の前にタイムスタンプを付ける別の方法があるかどうか疑問に思いました。session.logに書き込む前に、書き込みを別のシェル関数にパイプできますか?このようなものscript -a >(add_timestamps.sh >> session.log)(機能しません)
回答: これは、ニーズによっては部分的な解決策になる場合があります。ps1文字列に\ d\d {}を含めると、各コマンドプロンプトに日付と時刻が含まれます。これにより、前のコマンドが終了した時刻がわかります。最も単純なケースでは、 ps1='\d \d{} $ ' スクリプトを呼び出した後(または.bashrcなどで)これを行うと、次のようなsession.logが取得されます。 wed apr 20 08:23:55 pm $ date wed apr 20 20:23:57 edt 2016 wed apr 20 08:23:57 pm $ exit