我正在尝试使用本文中讨论的技术生成给定 NAT 网关后面的客户端/设备数量的报告。
基本上我需要编写一个同时查找“用户代理”和“生存时间”的脚本:
grep " User-Agent:" *.txt
grep " Time to live:" *.txt
这些正是这些行在我的输出文件中的格式,我很高兴将文本放在行尾。他们分开工作,但我没有成功地将它们结合起来。
我最近的尝试是:
egrep -w ' User-Agent:'|' Time to live:' ../*.txt
grep ' User-Agent:' ../*.txt' && grep ' Time to live:' ../*.txt
(我一直在从 Wireshark 手动导出文本格式文件,如果有人建议通过脚本执行此操作,我将不胜感激,我有大量文件要做。)
我寻找了一个类似的线程,但我没有找到一个,如果一个已经存在(如我所料)我很抱歉,是否有人可以向我提供帮助链接或提供它,我将不胜感激。
编辑:我想我应该提一下,我正在寻找的两个短语位于由其他数据分隔的行上,因此解决方案需要在如下示例中搜索这两个短语:
User-Agent:
blahblahblah:
halbhalbhalb:
Time to live:
egrep ' 用户代理:| 生存时间:' ../*.txt 给了我:
desktop:~/Documents/scripts$ ./pcap_ttl_OS_useragent
../scripttextfile1p.txt: Time to live: 128
../scripttextfile1p.txt: User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7.5) Gecko/20041107 Firefox/1.0\r\n
../scripttextfile2p.txt: Time to live: 55
../scripttextfile3p.txt: Time to live: 128
../scripttextfile3p.txt: User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7.5) Gecko/20041107 Firefox/1.0\r\n