【问题标题】:How can I tell grep to find only inside the files but not in the filename?如何告诉 grep 仅在文件中查找,而不在文件名中查找?
【发布时间】:2017-10-28 08:15:49
【问题描述】:

我正在一个使用 spring 和 Angular2 的项目中工作,该项目是由其他人启动的,我试图弄清楚它是如何制作的

我试图在项目中找到主字符串,但是当我使用 grep (grep -r "home") 时,所有文件都被选中,因为项目位于 /home/user 目录中。当然这不是一个选项,文件太多了……

所以这是我真的想不通的事情。至少不要只使用终端命令。

我知道如果我将项目移动到另一个目录,它几乎可以解决问题,但我在想真的有更优雅的方式来完成它。

感谢您的支持,对我奇怪的英语感到抱歉。

【问题讨论】:

  • grep,除非有不同的指示,否则只会匹配文件内容,而不匹配文件名。这是默认行为。你确定你没有将find 输出传送到grep
  • 我只是在执行 grep -r "home" 并且输出带有我的项目目录中的所有文件,该命令有问题吗?
  • @BarzX___ 尝试放入特定目录,例如 grep -r home . 如果这不起作用,type grep 会返回什么?

标签: recursion path grep find


【解决方案1】:

好吧,我傻了。 最后,当 yarn 编译 angular 项目时,它似乎使用了绝对路径,所以当我使用 grep -r "home" 时,几乎所有东西都是绝对路径的巧合,现在我真的知道我在做什么,并且这几乎是无知和沮丧。

非常感谢,抱歉。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-11-15
    • 1970-01-01
    • 1970-01-01
    • 2019-07-08
    • 1970-01-01
    • 2013-05-16
    • 2012-07-24
    • 1970-01-01
    相关资源
    最近更新 更多