use*_*654 0 linux search grep command-line
我有一个内容类似于以下内容的文件:
google.com,9,AB+CD,nonAB+nonCD
youtube.com,9,AB+CD,AB+CD
facebook.com,20,AB+CD,nonCD
Run Code Online (Sandbox Code Playgroud)
列数不固定。但是第一列是一个 URL,第二列是一个数字,从第三列开始是用逗号分隔的关键字,但它们因站点而异。
我想计算可以控制行中哪些关键字的 URL(行)数。例如,
1)AB+CD没有nonAB和nonCD。注意:AB+CD这个词可以出现很多次。2) AB+CD 没有出现nonCD(但如果有别的也可以)
如何在一行中搜索一个字符串并确保不存在另一个字符串。当我使用:
grep 'AB+CD' test.txt > result.txt
Run Code Online (Sandbox Code Playgroud)
它打印找到“AB+CD”的每一行。
如果我想打印只有 'AB+CD' 的行怎么办:
youtube.com,9,AB+CD,AB+CD
Run Code Online (Sandbox Code Playgroud)
或者有 'AB+CD' 和除了 'nonAB' 之外的任何东西:
youtube.com,9,AB+CD,AB+CD
facebook.com,20,AB+CD,nonCD
Run Code Online (Sandbox Code Playgroud)
如果您只想进行纯文本搜索而不关心列,您可以grep -v像这样链接倒排匹配:
cat input.txt | grep 'IncludedText' | grep -v 'ExcludedText'
Run Code Online (Sandbox Code Playgroud)
如果您想按列进行适当的过滤,您需要使用类似awk.
| 归档时间: |
|
| 查看次数: |
993 次 |
| 最近记录: |