Linux文件搜索命令

1.文件搜索命令locate

locate  文件名

在后台数据库按文件名搜索文件,搜索速度更快

/var/lib/mlocate

locate命令所搜索的后台数据库

updatedb 更新数据库(新建的文件不能很快搜索到,需要更新数据库)

/tmp 下的文件搜索不到

2.命令搜索命令

搜索命令的命令 whereis

whereis  命令名

搜索命令所在路径及帮助文档所在位置

选项:

-b:只查找可执行文件

-m:只查找帮助文件

搜索命令的命令 which

which 文件名

搜索命令所在路径及别名

shell自带的命令例如cd pwd等不能用which和whereisz找到

3.path环境变量

定义的是系统搜索命令的路径

4.find命令

find  [搜索范围]  [搜索条件]

注意:要避免大范围搜索,会非常浪费系统资源

find是在系统当中搜索符合条件的文件名。如果需要匹配,则需要使用通配符匹配,通配符是完全匹配。

Linux中的通配符

* 匹配任意内容

?匹配任意一个字符

[] 匹配任意一个中括号中的内容

find /root -iname install.log

不区分大小写

find /root -user root

按照所有者进行搜索

find /root -nouser

查找没有所有者的文件

find /var/log/ -mtime +10

查找10天前修改的文件

-10 10天内修改的文件

10  10天当天修改的文件

atime  文件访问时间

ctime 改变文件属性

mtime 修改文件内容

find .-size 25k

查找文件大小是25kb的文件

find . -inum 262422

查找i节点是262422的文件

find /etc -size +25k -a -size  -50k

查找/etc/目录下文件大小大于25k小于50k的文件

-a and 逻辑与

-o  or  逻辑或

find /etc -size +25k -a -size  -50k -exec  ls -lh  {} \;

查找/etc/目录下文件大小大于25k小于50k的文件,并显示详细信息。

-exec/ 命令  {} \;对搜索结果执行操作。

4.搜索字符串命令grep

grep [选项]  字符串 文件名

在文件当中匹配符合条件的字符串

选项:

-i  忽略大小写

-v 排除指定字符串

可以进行模糊查询

你可能感兴趣的:(Linux文件搜索命令)