分页: 1 / 1
grep命令的作用范围
发表于 : 2010-06-02 18:46
由 罗非鱼
似乎grep命令仅仅对txt文档搜索,比如
我的/home/pt/computer/文件夹中有好几个文件,都含有"字符",这两个字。
但是用这个命令
grep -rl "字符" /home/pt/computer/,就是搜索不出来。
Re: grep命令的作用范围
发表于 : 2010-06-02 19:06
由 millenniumdark
罗非鱼 写了:似乎grep命令仅仅对txt文档搜索,比如
我的/home/pt/computer/文件夹中有好几个文件,都含有"字符",这两个字。
但是用这个命令
grep -rl "字符" /home/pt/computer/,就是搜索不出来。
.html之类的也行,但是必须是文本文件。
Re: grep命令的作用范围
发表于 : 2010-06-02 19:12
由 eexpress
其实二进制也可以的。只要是有那文字。
Re: grep命令的作用范围
发表于 : 2010-06-02 20:37
由 罗非鱼
我可否将我要搜索的东西,转换成二进制的东西,然后再让它搜索?
Re: grep命令的作用范围
发表于 : 2010-06-02 21:22
由 BigSnake.NET
什么文件
doc 文件?
Re: grep命令的作用范围
发表于 : 2010-06-02 21:40
由 i_NIX
本来就是文本处理工具,LZ考虑一下吧。非文本的格式很难解析的
Re: grep命令的作用范围
发表于 : 2010-06-02 22:16
由 aerofox
什么文件都可以,但只能查原原本本匹配你要找的内容的东西。
例如在一个 pdf 文件中有“字符”这两个字挨在一起,但在文件中的表示却可能不这么简单,中间可能夹杂有别的内容,那么 grep 就找不到了。
再比如,在 html 文件中,“字符”和“<span>字</span><span>符</span>”显示出来都是一样的,但对于后者,用 grep 查“字符”是查不到的。
另外,grep 可以加 --binary-files=without-match,则遇到二进制文件时会自动不做查找,如果你把这个参数加到了 GREP_OPTIONS 环境变量中,那么 grep 就默认不查找二进制文件。
Re: grep命令的作用范围
发表于 : 2010-06-03 18:02
由 xieshaohu
aerofox 写了:什么文件都可以,但只能查原原本本匹配你要找的内容的东西。
例如在一个 pdf 文件中有“字符”这两个字挨在一起,但在文件中的表示却可能不这么简单,中间可能夹杂有别的内容,那么 grep 就找不到了。
再比如,在 html 文件中,“字符”和“<span>字</span><span>符</span>”显示出来都是一样的,但对于后者,用 grep 查“字符”是查不到的。
另外,grep 可以加 --binary-files=without-match,则遇到二进制文件时会自动不做查找,如果你把这个参数加到了 GREP_OPTIONS 环境变量中,那么 grep 就默认不查找二进制文件。
学习了。
Re: grep命令的作用范围
发表于 : 2010-06-04 7:50
由 alenbull
试试find /home/pt/computer/ -type f|xargs grep "字符"
Re: grep命令的作用范围
发表于 : 2010-06-04 23:31
由 THINKERCN

是文件就成,只要能够解释成指定的字符串。