Linux提取日志中的IP地址并去重

原日志文件:logger.log  内容:

{"peer":"kts_001","type":"http","date":"2023-06-14 14:42:30","content":{"ip":"192.168.6.177","method":"GET","uri":"\/kts\/nts\/info","body":"","httpCode":200,"respond":"{\"code\":0,\"msg\":\"成功\",\"result\":{\"type\":1,\"utc\":1686724950400374,\"ltc\":1686724950404128,\"gpsStatus\":1,\"cdmaStatus\":0,\"ktMode\":6,\"ktStatus\":1,\"ftMode\":1,\"gpsEnable\":1,\"cdmaEnable\":0}}"}}
{"peer":"kts_001","type":"http","date":"2023-06-14 14:42:30","content":{"ip":"192.168.6.177","method":"GET","uri":"\/kts\/nts\/info","body":"","httpCode":200,"respond":"{\"code\":0,\"msg\":\"成功\",\"result\":{\"type\":1,\"utc\":1686724950511202,\"ltc\":1686724950514957,\"gpsStatus\":1,\"cdmaStatus\":0,\"ktMode\":6,\"ktStatus\":1,\"ftMode\":1,\"gpsEnable\":1,\"cdmaEnable\":0}}"}}
{"peer":"kts_001","type":"ntp","date":"2023-06-14 14:42:30","content":{"clientIp":"192.168.6.177","clientPort":45189,"referenceId":5460039,"rootDispersion":76,"referenceTimestamp":1686724857229845,"originatorTimestamp":1686724952319001,"receiveTimestamp":1686724950601704,"transmitTimestamp":1686724950601921}}
{"peer":"kts_001","type":"http","date":"2023-06-14 14:42:30","content":{"ip":"192.168.6.177","method":"GET","uri":"\/kts\/nts\/info","body":"","httpCode":200,"respond":"{\"code\":0,\"msg\":\"成功\",\"result\":{\"type\":1,\"utc\":1686724950604910,\"ltc\":1686724950608664,\"gpsStatus\":1,\"cdmaStatus\":0,\"ktMode\":6,\"ktStatus\":1,\"ftMode\":1,\"gpsEnable\":1,\"cdmaEnable\":0}}"}}
{"peer":"kts_001","type":"ntp","date":"2023-06-14 14:42:30","content":{"clientIp":"192.168.6.177","clientPort":37480,"referenceId":5460039,"rootDispersion":76,"referenceTimestamp":1686724857229845,"originatorTimestamp":1686724952416000,"receiveTimestamp":1686724950698109,"transmitTimestamp":1686724950698350}}
{"peer":"kts_001","type":"http","date":"2023-06-14 14:42:30","content":{"ip":"192.168.6.177","method":"GET","uri":"\/kts\/nts\/info","body":"","httpCode":200,"respond":"{\"code\":0,\"msg\":\"成功\",\"result\":{\"type\":1,\"utc\":1686724950700964,\"ltc\":1686724950704719,\"gpsStatus\":1,\"cdmaStatus\":0,\"ktMode\":6,\"ktStatus\":1,\"ftMode\":1,\"gpsEnable\":1,\"cdmaEnable\":0}}"}}
{"peer":"kts_001","type":"http","date":"2023-06-14 14:42:30","content":{"ip":"192.168.6.177","method":"GET","uri":"\/kts\/satellite\/info","body":"","httpCode":200,"respond":"{\"code\":0,\"msg\":\"成功\",\"result\":{\"gpsInviewCount\":13,\"bdInviewCount\":11,\"gpsInuseCount\":12,\"bdInuseCount\":13,\"latitude\":4001.4611799999998,\"latitudeHemisphere\":78,\"longitude\":11625.88177,\"longitudeHemisphere\":69,\"gpsSatelliteList\":[{\"id\":4,\"angleElevation\":6,\"angleAzimuth\":33,\"nsRatio\":35},{\"id\":5,\"angleElevation\":42,\"angleAzimuth\":245,\"nsRatio\":42},{\"id\":6,\"angleElevation\":44,\"angleAzimuth\":81,\"nsRatio\":42},{\"id\":9,\"angleElevation\":29,\"angleAzimuth\":53,\"nsRatio\":39},{\"id\":11,\"angleElevation\":70,\"angleAzimuth\":353,\"nsRatio\":44},{\"id\":12,\"angleElevation\":25,\"angleAzimuth\":248,\"nsRatio\":38},{\"id\":17,\"angleElevation\":7,\"angleAzimuth\":147,\"nsRatio\":21},{\"id\":19,\"angleElevation\":25,\"angleAzimuth\":148,\"nsRatio\":39},{\"id\":20,\"angleElevation\":68,\"angleAzimuth\":270,\"nsRatio\":42},{\"id\":25,\"angleElevation\":19,\"angleAzimuth\":286,\"nsRatio\":36},{\"id\":29,\"angleElevation\":14,\"angleAzimuth\":318,\"nsRatio\":27},{\"id\":50,\"angleElevation\":42,\"angleAzimuth\":164,\"nsRatio\":37}],\"bdSatelliteList\":[{\"id\":1,\"angleElevation\":0,\"angleAzimuth\":0,\"nsRatio\":31},{\"id\":3,\"angleElevation\":0,\"angleAzimuth\":0,\"nsRatio\":27},{\"id\":4,\"angleElevation\":0,\"angleAzimuth\":0,\"nsRatio\":28},{\"id\":5,\"angleElevation\":0,\"angleAzimuth\":0,\"nsRatio\":28},{\"id\":6,\"angleElevation\":0,\"angleAzimuth\":0,\"nsRatio\":16},{\"id\":7,\"angleElevation\":0,\"angleAzimuth\":0,\"nsRatio\":15},{\"id\":8,\"angleElevation\":0,\"angleAzimuth\":0,\"nsRatio\":14},{\"id\":10,\"angleElevation\":0,\"angleAzimuth\":0,\"nsRatio\":16},{\"id\":11,\"angleElevation\":0,\"angleAzimuth\":0,\"nsRatio\":15},{\"id\":12,\"angleElevation\":0,\"angleAzimuth\":0,\"nsRatio\":16},{\"id\":13,\"angleElevation\":0,\"angleAzimuth\":0,\"nsRatio\":13},{\"id\":14,\"angleElevation\":0,\"angleAzimuth\":0,\"nsRatio\":15},{\"id\":15,\"angleElevation\":0,\"angleAzimuth\":0,\"nsRatio\":22}]}}"}}
{"peer":"kts_001","type":"http","date":"2023-06-14 14:42:30","content":{"ip":"192.168.6.177","method":"GET","uri":"\/kts\/system\/role\/get","body":"","httpCode":200,"respond":"{\"code\":0,\"msg\":\"成功\",\"result\":{\"timeSrc\":\"GPS\",\"level\":1,\"isOK\":true}}"}}
{"peer":"kts_001","type":"http","date":"2023-06-14 14:42:30","content":{"ip":"192.168.6.177","method":"GET","uri":"\/kts\/nts\/info","body":"","httpCode":200,"respond":"{\"code\":0,\"msg\":\"成功\",\"result\":{\"type\":1,\"utc\":1686724950708567,\"ltc\":1686724950712321,\"gpsStatus\":1,\"cdmaStatus\":0,\"ktMode\":6,\"ktStatus\":1,\"ftMode\":1,\"gpsEnable\":1,\"cdmaEnable\":0}}"}}
{"peer":"kts_001","type":"http","date":"2023-06-14 14:42:33","content":{"ip":"127.0.0.1","method":"GET","uri":"\/kts\/nts\/version","body":"","httpCode":200,"respond":"3.1.7"}}
{"peer":"kts_001","type":"http","date":"2023-06-14 14:42:38","content":{"ip":"127.0.0.1","method":"GET","uri":"\/kts\/nts\/version","body":"","httpCode":200,"respond":"3.1.7"}}
.....

提取所有type为ntp的日志

cat /tmp/logger.log |grep ntp > ntp.log

得到一个ntp.log文件

{"peer":"kts_001","type":"ntp","date":"2023-06-14 14:42:30","content":{"clientIp":"192.168.6.177","clientPort":45189,"referenceId":5460039,"rootDispersion":76,"referenceTimestamp":1686724857229845,"originatorTimestamp":1686724952319001,"receiveTimestamp":1686724950601704,"transmitTimestamp":1686724950601921}}
{"peer":"kts_001","type":"ntp","date":"2023-06-14 14:42:30","content":{"clientIp":"192.168.6.177","clientPort":37480,"referenceId":5460039,"rootDispersion":76,"referenceTimestamp":1686724857229845,"originatorTimestamp":1686724952416000,"receiveTimestamp":1686724950698109,"transmitTimestamp":1686724950698350}}
......

提取IP地址并根据IP去重

cat ntp.log |grep -o '\([0-9]\{1,3\}\.\)\{3\}[0-9]\{1,3\}'|sort -d | uniq  >> ip.txt

得到一个ip.txt文件,里面是所有去重过的ip地址。

posted @ 2023-06-14 15:13  xjournal  阅读(202)  评论(0编辑  收藏  举报