1、登录Linux系统之后打开终端,确定你要找关键字的目录。
2、查看下当前目录下所有的文件,你所要找的关键字就在当前目录下某个文件里面。
3、find -type f -print这个命令可以列出当前目录下的所有文件。
4、type后面的f是file的意思,所以只列出文件,而排除文件夹。
5、接下来只要在find命令后面加上exec命令就可以实现。
1、find [选项] [目录] [条件] [动作]
如果不指定任何目录,find 将会查找当前目录。如果 不指定条件,则条件相当于“true”,这样会把全部文件都找出来。选项、条件和动作的设置十分繁多, 看看 几个参数选项:
-xdev:不在其它文件系统的目录中搜索。
-mindepth
-maxdepth
-follow:如果符号链接到目录,则跟随符号链接进入。默认情况下,find 不跟随链接。
-daystart:当使用与事件相关的测试时(见下文),将当天的开始时间作为时间戳,而不是默认值(从当前时间倒退24个小时)。
条件可以是一个或多个原子测试。这是一些有用的测试:
-type <文件类型>:搜索给定类型的文件。文件类型可以是以下之一:f(普通文件)、d(目录)、l(符号链接)、s(套接字)、b(块模式文件)、c(字符模式文件)或p(命名管道)。
-name <模式>:查找文件名与给定模式匹配的文件。使用此选项,模式将被看作shell 全局模式(参见“Shell 通配符”一节)。
-iname <模式>:与 -name 类似,但不区分大小写。
-atime
-anewer <文件>:查找上次访问时间晚于文件的文件。
-ctime
-regex <模式>:与 -name 相同,但模式将被看作正则表达式。
-iregex
2、利用find加grep,find找出文件,grep查找文件内容
# find . -type f -print | xargs grep "hostname"
用grep命令在所有的普通文件中搜索hostname这个词
find ./ -name *.h|xargs grep "test"
表示从当前目录以及其所有子目录下的所有后缀为:.h的文件中,搜索包含字符串"test"的文件
find加cat命令
具体你查看命令的帮助信息。