2016-03-18 17 views
1

以下のログファイルからデータを抽出するためのヘルプを探しています。ログファイルからデータを抽出する際に助けが必要です

ログデータ:

INFO : Partition test.t_abc_cdfn_gprs{schdate_year=2016, schdate_month=02, schdate_day=17, schtime_hour=01} stats: [numFiles=0, numRows=4265004, totalSize=0, rawDataSize=0] 
INFO : Partition test.t_abc_glob_gprs{year=2016, month=02, day=17} stats: [numFiles=0, numRows=4265004, totalSize=0, rawDataSize=0] 
INFO : Partition test.t_abc_part_gprs{part1=2016, part2=02} stats: [numFiles=0, numRows=4265004, totalSize=0, rawDataSize=0]* 

コード:

echo "INFO : Partition test.t_abc_cdfn_gprs{schdate_year=2016, schdate_month=02, schdate_day=17, schtime_hour=16} stats: [numFiles=0, numRows=16123348, totalSize=0, rawDataSize=0]" | sed -n '/{/{s/.*{//;s/\}/,/;p}' | awk -F':' '{print $1}' | sed 's/stats//g' | sed 's%,%/%g' 

私は年/月/日になることができます抽出するために、あるいは、それはまた、サンプルログエントリで述べたさまざまなフォーマットであることが必要値しかし、値は中かっこで囲み、schdate = 2016などのように先頭に変数を入れます。

出力が必要です:

GNU付き
2016/02/17/01 
2016/02/17 
2016/02 

答えて

0

のsed:

sed 's/.*{\(.*\)}.*/\1/;s/[^= ]\+=//g;s/, /\//g' file 

出力:

 
2016/02/17/01 
2016/02/17 
2016/02 

参照:The Stack Overflow Regular Expressions FAQ

+0

ををご覧ください:[誰かが私の質問に答えるとき、私は何をすべき?]( http://stackoverflow.com/help/someone-answers) – Cyrus

関連する問題