Dav*_*ave 14
这里的问题是正常的grep不匹配多行.所以,我会安装pcregrep并尝试以下命令:
pcregrep -rMl '\?>[\s\n]+\z' *
Run Code Online (Sandbox Code Playgroud)
这将-r使用PCRE多行匹配(-M部件)匹配文件夹和子文件夹(部件)中的所有文件,并仅列出其文件名(-l部件).
至于模式,匹配?>后跟一个或多个空格或换行符,然后是文件的结尾\z.我发现,当我在我的文件夹上运行它时,许多PHP文件确实以一个换行结束.因此,您可以将该正则表达式更新'\?>[\s\n]+\n\z'为匹配单个\n字符终止符之上和之上的空白文件.
最后,od -c filename如果您需要检查其确切的字符序列结尾,您始终可以使用它来打印文件的明确表示.