我需要计算来自.tr
文件的接收数据包。问题是我需要一个字符串,但也会计算一些不必要的事件。
所以我想要一个解决方案。
line1: r 0.500000000 1 RTR — 0 cbr 210 [0 0 0 0] ——- [1:0 5:0 32 0] [0] 0 0
line2: r 0.501408175 3 RTR — 0 AODV 48 [0 ffffffff 1 800] ——- [1:255 -1:255 30 0] [0x2 1 1 [5 0] [1 4]] (REQUEST)
我只想第1行,但我只搜索‘^r’
,因此返回两个文件。请帮助我如何搜索需要2种模式的行?
答案 0 :(得分:0)
您可以使用grep
一次匹配多个表达式,或者如果存在其中一个表达式则返回结果。
OR
一样 - 如果 foo 或 bar 匹配:
grep -e "foo|bar" file
AND
一样 - 如果 foo 和 bar 匹配:
grep "foo" file | grep "bar"
由于你需要两种模式,我会选择最新的模式。但是,我认为您可以改进您的问题,举例说明您希望代码返回的内容,以及您目前使用的确切命令。
您也可以定义grep
命令来查找 foo 的出现次数,但不包括 bar 。也许这更容易,取决于你需要什么。
grep "foo" file | grep -v "bar"