带有特定扩展名的 Minix grep 搜索
Minix grep search with specific extensions
为了学校我必须做一个作业,我需要在 minix 中使用 grep
命令来搜索包含 "int main(" 的文件的源代码树。源代码树存储在 /usr/src
中,我有以下命令:
grep -rn --include=\*.c /usr/src/ "int main("
问题是我无法获取仅在 .c
文件中搜索的命令。
所以问题是:如何使用 grep
搜索任何包含 "int main("
的文件,而只搜索 .c
个文件?
非常感谢任何帮助。
我认为以下方法可行:
grep "int main(" $(find /usr/src|grep .c)
这将获取 /usr/src 中的所有文件,并查看哪些文件的文件名中包含字符串“.c”,然后在每个文件中查找一些字符串。带有 $( 的 grep 不会查看这些文件的内部,因为它会查找通过管道接收的标准输入中的任何字符串。
编辑:
这可能行不通,具体取决于您的计算机的功率级别。在我的笔记本电脑上它 returns "zsh: argument list too long: grep"。不过原理应该可以。
编辑编辑:
如果您还想搜索(例如).h 文件,您可以使用以下内容:
grep "int main(" $(find /usr/src|grep .c|grep .h)
为了学校我必须做一个作业,我需要在 minix 中使用 grep
命令来搜索包含 "int main(" 的文件的源代码树。源代码树存储在 /usr/src
中,我有以下命令:
grep -rn --include=\*.c /usr/src/ "int main("
问题是我无法获取仅在 .c
文件中搜索的命令。
所以问题是:如何使用 grep
搜索任何包含 "int main("
的文件,而只搜索 .c
个文件?
非常感谢任何帮助。
我认为以下方法可行:
grep "int main(" $(find /usr/src|grep .c)
这将获取 /usr/src 中的所有文件,并查看哪些文件的文件名中包含字符串“.c”,然后在每个文件中查找一些字符串。带有 $( 的 grep 不会查看这些文件的内部,因为它会查找通过管道接收的标准输入中的任何字符串。
编辑:
这可能行不通,具体取决于您的计算机的功率级别。在我的笔记本电脑上它 returns "zsh: argument list too long: grep"。不过原理应该可以。
编辑编辑:
如果您还想搜索(例如).h 文件,您可以使用以下内容:
grep "int main(" $(find /usr/src|grep .c|grep .h)