文件搜索命令:locate
命令名称:locate
命令所在路径:/usr/bin/locate
执行权限:所有用户
语法:locate 文件名
功能描述:在文件资料库中查找文件,不是实时文件
范例:$ locate inittab
搜索快的原因:该命令直接搜索自己的文件库,而不是像其他搜索某个磁盘
locate命令的缺点:非实时查找命令;可以使用updatedb命令强制更新资料库,以使用locate搜索命令
对部分目录中的文件不进行收录,比如/tmp
以上命令类似于windows中的工具everything
2、更精确的文件搜索命令:which
命令名称:which
命令所在路径:/usr/bin/which
执行权限:所有用户
语法:which 命令
功能描述:搜索命令所在目录及别名信息,通过获取命令所在路径,可基本判断该命令的使用权限范围,比如,在sbin目录下的,说明只有root用户才有权限使用;
范例: $ which ls
$which cp
$ which rm
3、更精确的文件搜索命令:whereis
命令名称;whereis
命令所在路径:/usr/bin/whereis
执行权限:所有用户
语法:whereis [命令名称]
功能描述:搜索命令所在目录及帮助文档路径
范例:$ whereis ls
注意:which 和whereis 命令是用于搜索 命令 所在路径的信息,which可查询命令的路径和别名信息,whereis命令可查询命令的路径和帮助文档所在的路径。通过路径是否在/sbin目录下,可确认是否只有root权限可用。通过帮助文档路径,可以帮助查找该命令更多信息
4、文件搜索命令:grep
命令名称:grep
命令所在路径:/bin/grep
执行权限:所有用户
语法:grep -iv [指定字串] [文件]
-i 不区分大小写
-v 排除指定字串
功能描述:在文件中搜寻字符串的行并输出,搜索某个文件内的某些字符串所在一行的信息
范例:# grep mysql /root/install.log 表示查找/root目录下,install.log文件中 myssql 字符串所在行信息
注意:该命令也被称为文件搜索命令,但是该命令与find which whereis等命令不同,
以上命令是在Linux系统中,查找某个文件的属性等信息,是为了找到文件,而grep命令
是为了在某个确定的文件中查找某些字符串等的信息。
即 find locate 用于在大量目录中查找某个文件
而 which whereis 用于在大量目录中查找某个命令的路径
而 grep 用于在某个文件中搜索某个字符串
总结:-i 不区分大小写的选项在 find locate grep等多个命令中作用共通
在Linux很多配置文件中,有很多的# 开头的行,表示注释信息