关闭后找到额外的空格/换行?>(php标签)

And*_*ain 11 php regex unix grep find

关闭后我有一个空格/新行?>(php标签)正在破坏我的应用程序.

如何轻松找到它我在这个应用程序中有1000个文件和100000行代码.

理想情况下,在一些正则表达式结合使用find grep在unix框上运行之后.

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如果您需要检查其确切的字符序列结尾,您始终可以使用它来打印文件的明确表示.


Nov*_*ovo -3

使用记事本++,您可以轻松地同时替换所有文档,拖放该文件文件夹并按 CTRL + R,您也可以使用正则表达式