如何找出一个目录下包含某个字符串的所有文件?linux提供的grep命令可以很快做到:
命令格式:
grep 要搜索的字符串 目录路径(相对或绝对路径都可以)
如
grep block app/design/frontend/default/coow/layout/*
这是输出的一部分:
app/design/frontend/default/coow/layout/tag.xml: </block>
app/design/frontend/default/coow/layout/tag.xml: <block type="tag/customer_tags" name="customer_tags" template="tag/customer/tags.phtml"/>
app/design/frontend/default/coow/layout/tag.xml: <block type="tag/customer_view" name="customer_view" template="tag/customer/view.phtml"/>
app/design/frontend/default/coow/layout/tag.xml: <block type="tag/customer_edit" name="customer_edit" template="tag/customer/edit.phtml"/>
上面命令只能搜索该目录下当前目录的文件,而不能搜索子目录中的文件夹。加上-R 选项可以让grep递归的搜索整个目录。加上-n选项可以让grep指示出在文件中的哪一行找到的字符串:
grep -Rn block app/design/frontend/default/coow/layout/*
app/design/frontend/default/coow/layout/tag.xml:85: <block type="tag/all" name="tags_all" template="tag/cloud.phtml"/>
app/design/frontend/default/coow/layout/tag.xml:92: <block type="tag/product_result" name="tag_products" template="catalogsearch/result.phtml">
app/design/frontend/default/coow/layout/tag.xml:93: <block type="catalog/product_list" name="search_result_list" template