【linux学习笔记四】文件搜索命令
一 文件搜索 locate
//在后台数据库中按文件名搜索 搜索速度更快 locate 文件名 //locate命令所搜索的后台数据库 /var/lib/mlocate //更新数据库 updatedb
二 命令搜索命令 whereis 与 which
//搜索命令所在路径及帮助文档所在位置 whereis ls whereis -b 只查看可行性文件 whereis -m 只查找帮助文件
//除了所在位置 还可以查看文件别名
which
三 文件搜索 find
//find [搜索范围] [搜索条件] find / -name install.log //linux中的通配符 * 匹配任意内容 ? 匹配任意一个字符 [] 匹配任意一个中括号内的字符 //不区分大小写 find /root -iname install.log //按照所有者搜索 find /root -user root //查找没有所有者的文件 find /root -nouser //查找10天前修改的文件 find /var/log/ -mtime +10 -10 10内 10 10天当天 +10 10天前 atime文件访问时间 ctime改变文件属性 mtime修改文件内容 //查找文件大小是25kb的文件 find . -size 25k -25k 小于25kb的文件 25k 等于25kb的文件 +25k 大于25kb的文件 //查找i节点262422的文件 find . -inum 262422
//查找/etc/目录下 大于20kb并且小于50kb的文件 find /etc -size +20k -a -size -50k -a and 逻辑与 两个条件都满足 -o or 逻辑或 两个条件满足一个即可 //查找/etc/目录下大于20kb小于50kb,并显示详细信息 find /etc -size +20k -a -size -50k -exec ls -lh{}\ ; -exec/-ok 命令 {}\; 对搜索结果执行操作
四 文件中搜索符合条件的字符串 grep
可以使用正则表达式进行匹配
//在文件中匹配符合条件的字符串 grep [选项] 字符串 文件名 选项 -i 忽略大小写 -v 排除指定字符串