问题

如何在Linux上使用 grep 只显示文件名(无在线匹配)?

我通常使用类似:

find . -iname "*php" -exec grep -H myString {} \;

我如何获得文件名(包含路径),但没有匹配项?我必须使用 xargs 吗?在我的 grep 手册页上找不到这样做的方法.



解决方法

标准选项 grep -l <​​/ code>(即小写字母L)可以执行此操作.

unix标准:

-l
    (The letter ell.) Write only the names of files containing selected
    lines to standard output. Pathnames are written once per file searched.
    If the standard input is searched, a pathname of (standard input) will
    be written, in the POSIX locale. In other locales, standard input may be
    replaced by something more appropriate in those locales.

在这种情况下,您也不需要 -H .




相关问题推荐