我正在搜索Git存储库,并希望包含该.git文件夹.
grep 如果我跑,则不包括此文件夹
grep -r search *
Run Code Online (Sandbox Code Playgroud)
包含此文件夹的grep命令是什么?
bit*_*ask 123
请参考本文末尾的解决方案,作为您正在做的更好的替代方案.
您可以显式包含隐藏文件(目录也是文件).
grep -r search * .*
Run Code Online (Sandbox Code Playgroud)
该*会匹配所有文件除了所隐藏的和.*将只匹配隐藏文件.但是,如果给定目录中没有非隐藏文件或没有隐藏文件,则会失败.你当然可以明确地添加.git而不是.*.
但是,如果您只想在给定目录中搜索,请执行以下操作:
grep -r search .
Run Code Online (Sandbox Code Playgroud)
该.会在目前的路径,这将包括非隐藏和隐藏文件.
我刚遇到这个问题,基于@ bitmask的答案,这是我的简单修改,以避免@sehe指出的问题:
grep -r search_string * .[^.]*
Run Code Online (Sandbox Code Playgroud)
小智 5
也许您更喜欢将“grep”与“find”命令结合起来以获得完整的解决方案,例如:
find . -exec grep -Hn search {} \;
Run Code Online (Sandbox Code Playgroud)
此命令将在隐藏文件或目录中搜索字符串“search”,并列出与此输出格式一致的所有文件:
文件路径:行号:重合行
./foo/bar:42:search line
./foo/.bar:42:search line
./.foo/bar:42:search line
./.foo/.bar:42:search line
Run Code Online (Sandbox Code Playgroud)