「time」に似たコマンドを記録します。

「time」に似たコマンドを記録します。

このtime(1)コマンドを使用すると、コマンドを引数として渡して時間を測定できますtime

私はファイルにリダイレクトし、入力を画面とファイルにコピーすることが可能であることをstderr知っています。しかし、ログにタイムスタンプを追加する方法がわかりません。stdout2>&1tee(1)

ロギング目的でファイルstderrにリダイレクトし、ファイルにタイムスタンプを追加するツールはありますか?stdout

答え1

ts(1)moreutilsの内容を使用できます。


ts~からその他のユーティリティ提供する各入力行にタイムスタンプが追加されます。 strftime を使用してフォーマットすることもできます。

$ echo 'foo bar baz' | ts
Mar 21 18:07:28 foo bar baz
$ echo 'blah blah blah' | ts '%F %T'
2012-03-21 18:07:30 blah blah blah
$ 

インストールするには:

sudo apt-get install moreutils

この回答からコピーした内容:https://stackoverflow.com/a/9813614/221689

答え2

annotate-outputDebianでお試しください開発スクリプトパック。タイムスタンプを表示し、標準出力の前に「O」を書き込み、標準エラーの前に「E」を書き込みます。例:

# run `ls` on one file that exists, and one that doesn't...
annotate-output ls /bin/bash /tmp/boosh

出力:

03:30:52 I: Started ls /bin/bash /tmp/boosh
03:30:52 O: /bin/bash
03:30:52 E: ls: cannot access '/tmp/boosh': No such file or directory
03:30:52 I: Finished with exitcode 2

関連情報