批量查找包含

php 网站程序很多页面用到<?短标签,由于php5.4取消了短标签,所以必须修改为<?php

先查找哪些页面有短标签标记<?

用命令

find . -name "*.php" | xargs grep -Prl '<\?(?!php)'

find . -name "*.php" -exec grep -Prl '<\?(?!php)' {} \;

或者

 grep -Prl --include=\*.php '<\?(?!php)' .

 

 

使用find命令的-exec选项处理匹配到的文件时,find命令将所有匹配到的文件一起传递给exec执行。但有些系统对能够传递给exec的命令长度有限制,这样在find命令运行几分钟之后,就会出现溢出错误。错误信息通常是“参数列太长”或“参数列溢出”。这就是xargs命令的用处所在,特别是与find命令一起使用。

xargs的作用是将参数列表转换成小块分段传递给其他命令,以避免参数列表过长的问题。

 

你可能感兴趣的:(grep,find)