我在项目中寻找一些模式,并且在某些文件中重复过多..我怎么能告诉grep每个文件只显示一次?
我正在使用:
grep -R "my_pattern" *
答案 0 :(得分:4)
你可以这样做,它会让grep只打印第一场比赛:
grep -m 1 -R "pattern" *
答案 1 :(得分:3)
您可以使用" uniq"命令:http://unixhelp.ed.ac.uk/CGI/man-cgi?uniq
grep -R "my_pattern" * | sort -u
这将排序并为您提供唯一值。
答案 2 :(得分:0)
您可以使用“计数”功能:
grep $TERM -crl $DIR
-c
会返回每个文件中的点击次数,而-l
会删除任何计数为0的文件
答案 3 :(得分:0)
如果您只想要包含 "my_pattern"
的文件的名称:
grep -lR "my_pattern" *
但是上面的命令会忽略所有以点开头的子文件夹。
如果您希望子文件夹 .git
中的文件名包含
"https://github.com"
:
grep -lR "https://github.com" .git/*