linux 搜索功能,Linux查找命令

本文介绍Linux中的查找功能

1.  locate 查找文件

命名格式:locate 文件名

查找原理:locate命令在后台数据库(/var/lib/mlocate)查找文件名,搜索速度快,因此如果只是想查找文件名,推荐使用locate命令

数据库林默认一天更新一次,因此,如果要查找新建的文件,需要手动更新数据库

sudo updatedb

locate查找过滤规则(文件系统,文件类型,文件路径)可以在文件/etc/updatedb.conf中配置

2ac9a84862ce

PRUNE_BIND_MOUNT #是否使用限制规则

PRUNEFS #不查找的文件系统

PRUNEPATHS #不查找的路径

2. 命令查找使用whereis和which

Linux命令一般包含二进制的可执行文件和帮助文件,可以使用whereis查找命令所在路径及其帮助文档的位置

2ac9a84862ce

例如:使用whereis ls可以看到ls命令的可执行文件为:/bin/ls 帮助文档为:/usr/share/man/man1/ls.1.gz和ls.1posix.gz

注意:whereis 只能使用查找命令,不能用于查找文件

which与wehreis类似,可以查找命令及其别名,但不能显示帮助文档

3. find命令查找文件

命令格式:find [查找路径范围] [查找条件]

find命令会在查找路径下遍历,比较耗资源,查找时间慢,但功能强大,可以加很多参数来限定查找条件

find / -name 文件名

find / -iname 文件名  #不区分大小写

find / -user root #按user查找

find / -size +1M #查找大于1MB的文件

find / -size -10k #查找小于10kB的文件

find / -mtime +5

-5  5天内修改的文件

5  第5天当天修改的文件

+5 5天前修改的文件

atime 文件访问问题

ctime 文件属性改变时间

mtime 文件内容修改时间

多条件查找可以使用参数-a (and) -o (or)

find / -size +10k -a -size -1M #查找根目录下大于10k小于1M的文件

3. 使用grep查找文件中的字符串

命令格式:grep [选项] 字符串 文件名

常用参数:

-i 忽略大小写

-n 显示行号

-r 递归查找

-v 查找不包含关键字的行

grep非常适合在代码中查找包含关键字的文件,也可以与find命令结果

find . -name “*.[ch]” | xargs grep “hello world” #查找包含关键字 hello world 的.c和.h文件

grep -rin "hello world" . #递归查找当前目录下包含"hello world"的文件 ,不区分大小写,并显示“hello world”所在行号

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值