有没有办法用 grep 找到所有包含至少X字?
答案1
好吧,假设单词之间用空格分隔,要找到包含 >= 5 个单词的行,请执行以下操作:
$ grep -P '\w+\s+\w+\s+\w+\s+\w+\s+\w+'
但 Grep 并不是完成这项工作的最佳工具,请尝试使用 gawk:
$ gawk 'NF>4'
Gawk 的 NF 变量保存字段数,默认情况下字段由空格定义,因此在一行文本中,每个字段都是一个单词。上面的命令将打印所有包含 4 个以上单词的行。
答案2
如果您希望行数 >= 为不同的值,请将数字“3”替换。
grep -E '^(\w+\b.){3}'