/home/myuser/logs
過去 5 日間の次のログ ファイルを含むディレクトリ ( ) があります。
applogs_20130402.txt
applogs_20130401.txt
applogs_20130331.txt
applogs_20130330.txt
すべての「applog」の各行の構造は同じで、データが異なるだけです。
<timestamp> | <fruit> | <color> | <cost>
たとえば、次のapplogs_20130402.txt
ようになります。
23:41:25 | apple | red | 53
23:41:26 | kiwi | brown | 12
23:41:29 | banana | yellow | 1023
... (etc., every line is pipe delimited like this)
5 つのログ ファイルすべてのすべてのログ エントリ (構造化された、パイプ区切りの行) を、すべてのタイムスタンプが時系列順に並べられた 1 つのファイルに結合する 1 つの "マスター ログ" を作成したいと考えています。さらに、タイムスタンプにも反映された日付が必要です。
たとえば、applogs_20130402.txt
とapplogs_20130401.txt
がディレクトリ内の唯一の 2 つの applog であり、両方ともそれぞれ次のように見えた場合:
applogs_20130402.txt:
=====================
23:41:25 | apple | red | 53
23:41:26 | kiwi | brown | 12
23:41:29 | banana | yellow | 1023
applogs_20130401.txt:
=====================
23:40:33 | blueberry | blue | 4
23:41:28 | apple | green | 81
23:45:49 | plumb | purple | 284
次に、masterlog.txt
次のようなファイルが必要です。
2013-04-01 23:40:33 | blueberry | blue | 4
2013-04-01 23:41:28 | apple | green | 81
2013-04-01 23:45:49 | plumb | purple | 284
2013-04-02 23:41:25 | apple | red | 53
2013-04-02 23:41:26 | kiwi | brown | 12
2013-04-02 23:41:29 | banana | yellow | 1023
私は Ubuntu を使用しており、Bash、python、perl にアクセスでき、どのソリューションを使用するかは好みません。通常は「最善の試み」を試みて投稿しますが、Linux でこのようなデータの集計を行ったことはありません。明らかに、上記の例とは異なり、ログは数千行のサイズです。したがって、すべてを手動で行うことはオプションではありません;-) よろしくお願いします!