- 论坛徽章:
- 0
|
本帖最后由 秋天的絮儿 于 2014-04-10 13:23 编辑
回复 4# yestreenstars - [Centos@cctv ~]$ awk 'function f(x,y){split(x,a,"/");split(y,b,":");return mktime(sprintf("%d %02d %02d %02d %02d %02d",a[1],a[2],a[3],b[1],b[2],0))}function g(z){gsub(/[^x]/,0,z);gsub(/x/,1,z);return z}NR==FNR{c[$2][f($6,$7)]=f($6,$7);d[$2][f($6,$7)]=$5;next}{for(i=0;i++<asort(c[$1]);)if(c[$1][i]>=f($2,$3)&&i!=1){s=g(d[$1][c[$1][i-1]])+g(d[$1][c[$1][i]]);print $0,gsub(/2/,0,s);next}print $0,"*"}' 90 91
- 10710 2013/9/6 11:00 2
- 10711 2013/9/7 12:00 0
- 10712 2013/9/7 11:00 *
复制代码 下载完4.0版本并安装成功了,测试脚本没有问题,但真心难懂啊。。
10712 2013/9/7 11:00 能不能只要这个时间点“2013/9/7 11:00”在90文件中没有时间点前或后或没有"10712“这行,就都用*表示? |
|