Linux查找目录下包含有某字符串的所有文件

来源:互联网 发布:采样温室气体数据 编辑:程序博客网 时间:2024/06/05 05:31

(转载)http://www.phpernote.com/linux/1312.html

linux系统中,如果你想在当前目录下查找所有包含"phpernote"字符串的文件,可以这样输入命令:

grep -rn "phpernote" *

* : 表示当前目录所有文件,也可以是某个文件名,可省略

-r  是递归查找

-n  是显示行号

-R  查找所有文件包含子目录

-i  忽略大小写,默认情况区分大小写

-l  只列出匹配的文件名

-L  列出不匹配的文件名

-w  只匹配整个单词,而不是字符串的一部分(如匹配 'magic',而不是 'magical')

-C number  匹配的上下文分别显示[number]行

(1)当然还有一些更有意思的查找方法,例如:

grep "phpernote" | "php" *

查找当前目录下包含了phpernote字符或者包含了php字符的文件

grep "phpernote" | grep "php" *

查找当前目录下既包含phpernote字符又包含php字符的文件

(2)这里还有些用于搜索的特殊符号: 

\< 和 \> 分别标注单词的开始与结尾。

例如: 

grep man * 会匹配 'Batman'、'manic'、'man'等

grep '\

grep '\' 只匹配'man',而不是'Batman'或'manic'等其他的字符串。 

'^':指匹配的字符串在行首

'$':指匹配的字符串在行尾

当然还可以通过xargs配合grep查找文件列表,例如:

find -type f -name '*.java'|xargs grep 'http'


//----------------------------------------------------------------------------

项目需求:

找到apk中的某个url。

(1)反编译apk;

(2)反编译之后,删除多余的java文件,比如android.support等等库和第三方库;

(3)使用shell命令找到相关的文件中包含http或者https的文件;


阅读全文
0 0