BEGIN{
p_id="";
id="";
p_date="";
}
/^ *[0-9]/{
p_id=id;
id=$2
}
/^ Time/{
if ($2" "$3 != p_date) {
if (p_date != ""){
printf("last record of %s: %d\n",gensub(/start:/,"","1",p_date),p_id)
printf("1st record of %s: %d\n",gensub(/start:/,"","1",$2)" "$3,id)
}
p_date=$2" "$3
}
}
※ 引述《nashsai (納許賽)》之銘言:
: Hi
: 我有一個文件為
: --------------------------------------------------------
: % id status user
: ---------------------------------
: 0 140 complete auser
: Details:
: Time start:Apr 6,2016 18:14:35
: % id status user
: ---------------------------------
: 0 141 complete buser
: Details:
: Time start:Apr 6,2016 18:45:35
: .
: .
: .
: .
: -------------------------------------------------------
: id是按照時間排的.
: 我想知道每天的第一筆ID與最後一筆ID
: 要使用什麼方法來做比較快
: 目前想到可能是搜到第一筆 日期(ex: Apr 6)時 印出前兩行 然後awk print $2
: 最後一筆可能用隔天的id-1
: 不知道我的想法對嘛
: 請各位看看 感謝
--
p_id="";
id="";
p_date="";
}
/^ *[0-9]/{
p_id=id;
id=$2
}
/^ Time/{
if ($2" "$3 != p_date) {
if (p_date != ""){
printf("last record of %s: %d\n",gensub(/start:/,"","1",p_date),p_id)
printf("1st record of %s: %d\n",gensub(/start:/,"","1",$2)" "$3,id)
}
p_date=$2" "$3
}
}
※ 引述《nashsai (納許賽)》之銘言:
: Hi
: 我有一個文件為
: --------------------------------------------------------
: % id status user
: ---------------------------------
: 0 140 complete auser
: Details:
: Time start:Apr 6,2016 18:14:35
: % id status user
: ---------------------------------
: 0 141 complete buser
: Details:
: Time start:Apr 6,2016 18:45:35
: .
: .
: .
: .
: -------------------------------------------------------
: id是按照時間排的.
: 我想知道每天的第一筆ID與最後一筆ID
: 要使用什麼方法來做比較快
: 目前想到可能是搜到第一筆 日期(ex: Apr 6)時 印出前兩行 然後awk print $2
: 最後一筆可能用隔天的id-1
: 不知道我的想法對嘛
: 請各位看看 感謝
--
All Comments