假设我需要GetTypes()
在所有C#源文件(.cs
)的目录/子目录中找到该函数。
我曾经用过grep -rn GetTypes *.cs
,但是却遇到了一个错误grep: *.cs: No such file or directory
。我不得不使用grep -rn GetTypes *
,但是在这种情况下,它不仅显示了所有文件*.cs
。
我只需要在.cs
文件中使用什么命令来查找字符串?
如果你的shell是bash≥4,把shopt -s globstar
你的~/.bashrc
。如果您的外壳是zsh,那么您就很好。那你就可以跑
grep -n GetTypes **/*.cs
**/*.cs
表示*.cs
递归地匹配当前目录或其子目录中的所有文件。
如果您没有运行支持**
grep的shell,则--include
可以执行递归grep并告知grep
仅考虑与某些模式匹配的文件。请注意文件名模式周围的引号:它由grep解释,而不是由Shell解释。
grep -rn --include='*.cs' GetTypes .
仅使用便携式工具(某些系统根本没有grep -r
),可find
用于目录遍历部分和grep
文本搜索部分。
find . -name '*.cs' -exec grep -n GetTypes {} +
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句