Re: [问题] 如合搜寻当天第一笔时间前的资讯

楼主: rickieyang (Rickie Yang)   2016-04-06 23:20:52
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
: 我有一个文件为
:
楼主: rickieyang (Rickie Yang)   2016-04-07 00:13:00
如果确定 id 是连续的, 不用记下 p_id, id-1 就可以了
作者: bitlife (BIT一生)   2016-04-07 11:14:00
好的程式习惯,还是要记,然后加一行比对p_id不等于id-1时发出错误讯息
楼主: rickieyang (Rickie Yang)   2016-04-07 15:01:00
原文资讯只有"ID是照时间排的",不确定是否连续,所以..
作者: bitlife (BIT一生)   2016-04-07 17:02:00
我的意思是就算连线还是照好习惯写,会有意想不到的收获连续都照好习惯写的程式,可以互相check,发现意想不到又难以发现的错误.程式是人写的,难免有错,或许本来设计连续,结果在异常情况下跳号了,上述照好习惯写的程式就能查觉,或者反而找到自己这边程式的罕见的异常流程错误.反正就是哪天万一印出错误讯息,能知道有异常,而不是让异常错误继续扩散
作者: kenwufederer (Nash)   2016-04-08 02:52:00
这是什么语言?C吗?
楼主: rickieyang (Rickie Yang)   2016-04-08 09:05:00
awk
作者: kenwufederer (Nash)   2016-04-08 15:14:00
跪 推一下,
作者: kenduest (小州)   2016-04-11 05:32:00
rickieyang 对 awk 真的很熟悉:)

Links booklink

Contact Us: admin [ a t ] ucptt.com