0

私は Linux に非常に慣れていません。整理しなければならない値が非常に多いため、仕事のためにデータ マイニング プロセスを自動化する方法を見つけようとしています。現在、次の形式のログ ファイルがあります。

YYYY-MM-DD HH:MM:SS
Sensor0 Temperature (Equation 1) is <Value0> Celsius
Sensor1 Temperature (Equation 1) is <Value1> Celsius
Sensor2 Temperature (Equation 1) is <Value2> Celsius
Sensor3 Temperature (Equation 1) is <Value3> Celsius

プログラムは、これらの値をこの形式で 5 秒ごとに吐き出します。私が実際にやりたいことは、このログ ファイルを処理して、日付と時刻に基づいて必要な 4 つのセンサー値のみを含む別のログ ファイルにする方法を見つけることです。

現在、を使用してフレーズをフィルタリングすることにより、ファイルを次の形式に処理できますsed

YYYY-MM-DD HH:MM:SS 
<Value0>
<Value1>
<Value2>
<Value3>

特定の日付と時刻を検索して、これらの 4 つの値を出力するにはどうすればよいですか? 実行したコーナー サイクルのすべてのタイム スタンプを含む別のログ ファイルがあり、これを温度値の検索の参考として使用しています。そのファイルの形式は次のとおりです。

YYYY-MM-DD HH:MM:SS
YYYY-MM-DD HH:MM:SS

最終的に処理された出力では、コーナーで指定されたタイム スタンプを使用して、コンテンツに次のように表示する必要があります。

Date, Time, Sensor0, Sensor1, Sensor2, Sensor3
YYYY-MM-DD, HH:MM:SS, <Value0>, <Value1>, <Value2>, <Value3>
4

1 に答える 1

0

たとえば、2013 年 7 月の 00:00:00 にすべてのイベントが必要な場合:

egrep "2013-07-.. 00:00:00" -A 4 /var/log/temp.log

ファイル /var/log/temp.log で「2013-07-.. 00:00:00」に一致するすべての行を検索し、出力に次の 4 行 (-A 4) も含めます。

于 2013-08-12T23:41:09.367 に答える