免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: sunnylocus
打印 上一主题 下一主题

简单的问题,请高手看下 [复制链接]

论坛徽章:
1
2015年亚洲杯之韩国
日期:2015-04-24 09:07:02
21 [报告]
发表于 2009-06-29 14:41 |只看该作者
是grep吧

论坛徽章:
0
22 [报告]
发表于 2009-06-29 15:18 |只看该作者

回复 #19 HH106 的帖子

传说中的高手*~_~*,功力太深厚了,看不懂,我贴到shell里,回车后什么也不显示,好象进入了死循环一样。那个lbs.log每秒钟都有信息以追加的方式写入

[ 本帖最后由 sunnylocus 于 2009-6-29 15:19 编辑 ]

论坛徽章:
0
23 [报告]
发表于 2009-06-29 15:31 |只看该作者

回复 #22 sunnylocus 的帖子

awk默认是以换行为一条记录,他令RS=“###”,就是认为所有信息为一行,你那个信息不断增长,所以awk永远也读不完这一行,所以就失败了。你用我那个试试。

论坛徽章:
0
24 [报告]
发表于 2009-06-29 15:45 |只看该作者

回复 #23 liying_gg 的帖子

我用你的那个命令不会死循环,不过会把不符合查找规则的信息也给显示出来了。实在是个头疼的问题。刚发贴,等有分了,分你一半

论坛徽章:
0
25 [报告]
发表于 2009-06-29 15:50 |只看该作者

回复 #24 sunnylocus 的帖子

不要客气。
不可能吧,怎么会吧不符合的查找出来呢?我在自己机器上实验了的啊。
或者你在说一下你的要求,难道是我理解错了你的意思?

论坛徽章:
0
26 [报告]
发表于 2009-06-29 15:52 |只看该作者
awk 'BEGIN{RS="<pos>"}{if($0~/13396229194/)print $0}' lbs.log

先令记录分隔符为<pos>,然后awk依次处理每条记录,如果记录匹配13396229194,那么打印这条记录。难道你只要最后一个<pos></pos>中的内容么?

论坛徽章:
0
27 [报告]
发表于 2009-06-29 16:12 |只看该作者

回复 #26 liying_gg 的帖子

这是我们公司的一个服务器,处理和电信那边的数据往来。打个比方我要对你的手机号137xxxxx进行定位,当我点了定位按钮后,程序用和电信定义好的协议以xml格式封装起来发给电信的定位接口,然后电信给我们的定位结果也是用xml封装的,格式就是我发贴的那个格式。所有的结果以实时追加的方式写入lbs.log日志,我现在要在后台监控下对你手机号137xxxxx的定位是否成功,因为向lbs.log写入东西的不只是定位记录还有其它程序写入的一些信息,所以我要过滤掉无用的信息,定位的结果是以<pos>开始以</pos>的结束的,中间内容就是包含的一些位置信息,比如经续度,位置描述了。同一时刻发起定位的有很多个,分捡出以<pos>开始以</pos>结束之间的内容,且中间的内容有137xxxxx字符串。感觉很难,实在没有办法解决了就算了,浪费你不少时间了:wink:

论坛徽章:
0
28 [报告]
发表于 2009-06-29 16:18 |只看该作者

回复 #27 sunnylocus 的帖子

我就是用你那个实验的,是可以的,不过我那个lbs.log不是不断增长的,而且除了你贴的那部分没有其他内容。
如果log不是完全按照你贴的那个格式,还有其他信息的话,就很不好处理了。

我自己做的lbs.log是
<pos>
  <msid>13396229194</msid>
  <time>20090626070042</time>
  <req_status>109</req_status>
  <x>0</x>
  <y>0</y>
  <posour></posour>
  <city_py></city_py>
  <loc_desc></loc_desc>
  <result_id>102</result_id>
  <roam_city></roam_city>
  <direction>0</direction>
  <speed>0</speed>
  <result>用户关机!</result>
</pos>
<pos>
  <msid>222</msid>
  <time>20090626070042</time>
  <req_status>109</req_status>
  <x>0</x>
  <y>0</y>
  <posour></posour>
  <city_py></city_py>
  <loc_desc></loc_desc>
  <result_id>102</result_id>
  <roam_city></roam_city>
  <direction>0</direction>
  <speed>0</speed>
  <result>用户关机!</result>
</pos>
<pos>
  <msid>111</msid>
  <time>20090626070042</time>
  <req_status>109</req_status>
  <x>0</x>
  <y>0</y>
  <posour></posour>
  <city_py></city_py>
  <loc_desc></loc_desc>
  <result_id>102</result_id>
  <roam_city></roam_city>
  <direction>0</direction>
  <speed>0</speed>
  <result>用户关机!</result>
</pos>

论坛徽章:
0
29 [报告]
发表于 2009-06-29 16:25 |只看该作者

回复 #28 liying_gg 的帖子

我截了一部分日志
2009-06-29 16:19:51:INFO com.gwsoft.lbs.mpc.unicom.LocationImmediate - L1 LIR : Result Info......处理请求过程中没有错误
2009-06-29 16:19:51:INFO com.gwsoft.lbs.mpc.unicom.LocationImmediate - L1 LIR : Position Result Info:用户目前不可到达  Position Mode:无
2009-06-29 16:19:51:INFO com.gwsoft.lbs.mpc.unicom.LocationImmediate - L1 LIR : Position Result Info:用户目前不可到达  Position Mode:无
2009-06-29 16:19:51:INFO com.gwsoft.lbs.mpc.service.LocationCenter - LBS response [XML]:<?xml version="1.0" encoding="GB2312"?>
<ANS VERSION="1.0">
  <LCSCLIENTID>100</LCSCLIENTID>
  <ORID>13310653440</ORID>
  <LIA>
  <RESULT>0</RESULT>
  <POSINFOS>
    <POSINFO>
      <POSITIONRESULT>104</POSITIONRESULT>
      <MSID>13361267723</MSID>
    </POSINFO>
    <POSINFO>
      <POSITIONRESULT>104</POSITIONRESULT>
      <MSID>13361237759</MSID>
    </POSINFO>
  </POSINFOS>
  </LIA>
</ANS>
2009-06-29 16:19:51:INFO com.tdt.lbs.mpc.MainLBS - 响应体:
<?xml version="1.0" encoding="GB2312"?>
<svc_result ver="1.0.0">
<clia ver="1.0.0">
<pos>
  <msid>15953913359</msid>
  <time>20090629162033</time>
  <req_status>109</req_status>
  <x>0</x>
  <y>0</y>
  <posour></posour>
  <city_py></city_py>
  <loc_desc></loc_desc>
  <result_id>746</result_id>
  <roam_city>null</roam_city>
  <direction>0</direction>
  <speed>0</speed>
  <result>ROAMING NOT SUPPORTED(需要漫游,而目的城市未开通此服务)</result>
</pos>
<pos>
  <msid>15953634978</msid>
  <time>20090629162036</time>
  <req_status>1</req_status>
  <x>114.95568</x>
  <y>36.771991</y>
  <posour></posour>
  <city_py></city_py>
  <loc_desc>在河北省邯郸市,位于S234北102米,在世纪商厦(曲周)南175米,在双星连锁店35米,在世纪文化广场东南125米,在紫博园(曲周)北721米。</loc_desc>
  <result_id>0</result_id>
  <roam_city>null</roam_city>
  <direction>0</direction>
  <speed>0</speed>
  <shape>
<Point/>
</shape>
  <result>定位成功</result>
</pos>
<pos>
  <msid>13912450492</msid>
  <time>20090629162038</time>
  <req_status>1</req_status>
  <x>117.35851</x>
  <y>39.268152</y>
  <posour></posour>
  <city_py></city_py>
  <loc_desc>在直辖市天津市北辰区,位于G205西49米,在泰鑫洗浴西888米,在西堤头镇东北1386米,在东堤头西1429米,在榆津河东北1572米。</loc_desc>
  <result_id>0</result_id>
  <roam_city>null</roam_city>
  <direction>0</direction>
  <speed>0</speed>
  <shape>
<Point/>
</shape>
  <result>定位成功</result>
</pos>
<pos>
  <msid>15912980399</msid>
  <time>20090629162033</time>
  <req_status>109</req_status>
  <x>0</x>
  <y>0</y>
  <posour></posour>
  <city_py></city_py>
  <loc_desc></loc_desc>
  <result_id>746</result_id>
  <roam_city>null</roam_city>
  <direction>0</direction>
  <speed>0</speed>
  <result>ROAMING NOT SUPPORTED(需要漫游,而目的城市未开通此服务)</result>
</pos>
<pos>
  <msid>15953923376</msid>
  <time>20090629161937</time>
  <req_status>109</req_status>
  <x>0</x>
  <y>0</y>
  <posour></posour>
  <city_py></city_py>
  <loc_desc></loc_desc>
  <result_id>502</result_id>
  <roam_city>null</roam_city>
  <direction>0</direction>
  <speed>0</speed>
  <result>发起SLIS定位失败</result>
</pos>
以下略.....

[ 本帖最后由 sunnylocus 于 2009-6-29 16:27 编辑 ]

论坛徽章:
0
30 [报告]
发表于 2009-06-29 16:30 |只看该作者
2009-06-29 16:19:51:INFO com.gwsoft.lbs.mpc.unicom.LocationImmediate - L1 LIR : Result Info......处理请求过程中没有错误
2009-06-29 16:19:51:INFO com.gwsoft.lbs.mpc.unicom.LocationImmediate - L1 LIR : Position Result Info:用户目前不可到达  Position Mode:无
2009-06-29 16:19:51:INFO com.gwsoft.lbs.mpc.unicom.LocationImmediate - L1 LIR : Position Result Info:用户目前不可到达  Position Mode:无
2009-06-29 16:19:51:INFO com.gwsoft.lbs.mpc.service.LocationCenter - LBS response [XML]:<?xml version="1.0" encoding="GB2312"?>
<ANS VERSION="1.0">
  <LCSCLIENTID>100</LCSCLIENTID>
  <ORID>13310653440</ORID>
  <LIA>
  <RESULT>0</RESULT>
  <POSINFOS>
    <POSINFO>
      <POSITIONRESULT>104</POSITIONRESULT>
      <MSID>13361267723</MSID>
    </POSINFO>
    <POSINFO>
      <POSITIONRESULT>104</POSITIONRESULT>
      <MSID>13361237759</MSID>
    </POSINFO>
  </POSINFOS>
  </LIA>
</ANS>
2009-06-29 16:19:51:INFO com.tdt.lbs.mpc.MainLBS - 响应体:
<?xml version="1.0" encoding="GB2312"?>
<svc_result ver="1.0.0">
<clia ver="1.0.0">

如果存在这种东西的话,就不好处理了,刚才我写的那个和那位大侠写的,都是针对你文件中只存在<pos></pos>这个块,其他信息太多的话处理起来会很困难,估计你得自己慢慢写脚本了。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP