如何在php标签之后列出所有带有空格的文件

时间:2012-11-30 11:45:48

标签: php regex linux shell command

是否可以使用linux命令列出文件末尾的php标记后面带有空格的所有文件?

3 个答案:

答案 0 :(得分:1)

删除文件末尾的所有尾随空行。

sed -i -e :a -e '/^\n*$/{$d;N;};/\n$/ba' file

使用grep -El '.*\?>\s+' *.php检查结束标记后面有空格的文件:

$ cat -E nospace.php
<?php$
?>$
$

$ cat -E withspace.php
<?php$
?>     $
$

$ grep -El '.*\?>\s+' *.php
withspace.php

答案 1 :(得分:1)

使用pcregrep进行回答,即使您的空格跨越到新行,也会匹配:

pcregrep -rM '\?>[\s]+[^\S]*$' *.php

未经测试,因为我没有在此计算机上安装pcregrep。如果您知道它不正确,请纠正我。

这应该匹配以?>结尾的所有文件,后跟只有空格。如果它跟随任何其他字符,那么它将不匹配(例如,如果它不是一个全PHP文件并且需要?>

答案 2 :(得分:0)

最初发表评论:

更好的计划:删除所有结束标记。