Linux常用命令---文件搜索命令

locate

搜索速度较快,单功能单一

locate 文件名
在后台数据库中按文件名搜索,搜索速度较快,只能按照文件名搜索

如果这个命令不起作用: 详细看这个
https://blog.csdn.net/qq_37495786/article/details/82857225

搜索的时候按照/etc/updatedb.conf配置文件筛选
PRUNE_BIND_MOUNTS = “yes” 开启搜索限制
PRUNEFS = 搜索时,不搜索的文件系统
PRUNENAMES = 搜索时,不搜索的文件类型
PRUNEPATHS = 搜索时,不搜索的路径

whereis和which

命令搜索命令
whereis 只能搜索所有系统命令
结果: 所搜命令所在路径和帮助文档所在位置
选项:
-b: 只查找可执行文件
-m: 只查找帮助文件

whoami 查看我是什么谁
whatis ls 查看ls的作用

which查看命令的位置和别名

echo $PATH 看环境变量 我们能直接执行系统命令,系统会在path下去找

find

最强大
耗费资源大
find 【搜索范围】【搜索条件】
find / -name yum.log 在根下搜 尽量避免在大范围搜索
通配符 *(代表多个任意符) ?(代表一个任意符) [](代表包含里面的一个符号)

按照名称搜索

find /tmp/ -name “ab*” -> abc abd
find /tmp/ -name “ab[cd]” -> abc abd
find /tmp/ -name “ab?” -> abc abd

-name 区分大小写 abc
-iname 不区分大小写 Abc abc

按照用户搜索

find /tmp/ -user root 按照所有者搜索 基本不用
find /tmp -nouser 查找没有所有者的文件

按照时间搜索

find /var/log/ -mtime +10

+10 表示10天前
-10 表示10天内
10 表示当天24小时内

-mtime 表示修改文件内容
-atime 表示文件访问时间
-ctime 表示改变文件属性

按照文件大小搜索

find . -size 25k

+25k
-25k
25k =25k

find . -size +25k -a -size -50k 找 25<size<50
-a and
-o or

千字节写小k 兆字节写大M

find . -size +25k -a -size -50k -exec ls -lh {} ; 显示查找出文件的详细信息

按照节点号去查找文件

find . -inum 266422

-exec 命令 {} ;

第一个条件查出的结果交给第二个命令去执行

grep

搜索字符串命令
在文件当中匹配符合条件的字符串
选项:
-i 忽略大小写
-v 排除指定字符串

grep [选项] 查找字符串 文件名
grep -iv “size” aaa.cfg

grep与find的不同

find:
找的是文件,使用通配符匹配,完全匹配

grep:
找的是文件中的字符串,需要匹配的需要正则表达式匹配,包含匹配

发布了31 篇原创文章 · 获赞 32 · 访问量 8118

猜你喜欢

转载自blog.csdn.net/qq_40905403/article/details/97486176