如何对所选单词使用grep进行筛选
你好, 我有一个日志文件,要对所选单词进行筛选。然而,它倾向于过滤许多,例如如何对所选单词使用grep进行筛选,grep,Grep,你好, 我有一个日志文件,要对所选单词进行筛选。然而,它倾向于过滤许多,例如 grep (GNU grep) 2.14 这也会找到这样的词: tail -f gateway-* | grep "P_SIP:N_iptB1T1" 但是,我不想在1之后显示任何内容。格雷普正在接11号、12号、13号等等 非常感谢您的建议,grep-o“p\u SIP:N\u iptB1T1” -o、 --仅匹配仅显示线条匹配图案的一部分 grep-o“p\u SIP:N\u iptB1T1” -o、 --仅
grep (GNU grep) 2.14
这也会找到这样的词:
tail -f gateway-* | grep "P_SIP:N_iptB1T1"
但是,我不想在1之后显示任何内容。格雷普正在接11号、12号、13号等等
非常感谢您的建议,grep-o“p\u SIP:N\u iptB1T1”
-o、 --仅匹配仅显示线条匹配图案的一部分
grep-o“p\u SIP:N\u iptB1T1”
-o、 --仅匹配仅显示线条匹配图案的一部分
至少可以尝试两种方法:
grep-w模式
匹配完整单词。似乎也适用于这种情况,即使模式有标点符号
grep pattern-m1
将输出限制为第一次匹配。(同样适用于grep xxx | head-1
)至少可以尝试两种方法:
grep-w模式
匹配完整单词。似乎也适用于这种情况,即使模式有标点符号
grep pattern-m1
将输出限制为第一次匹配。(也可以使用grep xxx | head-1
)您可以限制单词以1结尾:
-o, --only-matching show only the part of a line matching PATTERN
假设您有一个匹配的case,该case仅为“p_SIP:N_iptB1T1”,那么这将起作用。
但是,如果要从P_SIP:N_iptB1T1x中提取并仅显示一次,则需要限制仅显示第一个匹配项。
可以将单词限制为以1结尾:
-o, --only-matching show only the part of a line matching PATTERN 假设您有一个匹配的case,该case仅为“p_SIP:N_iptB1T1”,那么这将起作用。但是,如果您想从P\u SIP:N\u iptB1T1x中提取,并且只显示一次,那么您需要限制只显示第一个匹配项。
如果行中包含引号,如您的示例所示,只需使用grep中的
-E
选项,并将结束引号与\“
匹配即可。例如:
tail -f gateway-* | grep "P_SIP:N_iptB1T1\>"
如果这些引号不在文本文件中,并且单词后有空格或结束行,您也可以匹配这些引号:
grep -E "P_SIP:N_iptB1T1\"" file
如果行中包含您示例中的引号,只需使用grep中的
-E
选项,并将结束引号与\“
匹配即可。例如:
tail -f gateway-* | grep "P_SIP:N_iptB1T1\>"
如果这些引号不在文本文件中,并且单词后有空格或结束行,您也可以匹配这些引号:
grep -E "P_SIP:N_iptB1T1\"" file
这样行。但是,我想显示包含该模式的完整行,而不仅仅是模式本身。谢谢,这样行。但是,我想显示包含该模式的完整行,而不仅仅是模式本身。谢谢