linux 文件搜索命令

文件查找命令locate:

  • 在后台数据库中按文件名搜索 locate:与find比,速度快
  • /var/lib/mlocate 后台数据库,默认每天更新数据库
  • 强制更新命令updatedb,需要root权限
  • 按照 /etc/updatedb.conf配置的规则查找

命令搜索命令:whereis与which

  • whereis:只能搜索系统命令,查看不到shell内置命令,如cd
  • -b 只看执行文件
  • -m 只看帮助文件
  • which:除了查看命令还能查看别名,看不到帮助文档

find:文件搜索命令(非常强大,学习和使用慢)

  • find [搜索范围] [搜索条件]
  • find / -name zookeeper.out #在全盘范围内查找名称为 zookeeper.out
  • find / -name "zookeeper*" #在全盘范围内查找名称为 zookeeper开头的文件
  • 通配符:*,?,[]
  • -iname 不区分大小写
  • -user 按照所有者搜索
  • -nouser 没有所有者的文件,一般都是垃圾文件(内核产生的文件及外来文件(u盘或者移动硬盘中)除外)
  • -atime 文件访问时间
  • -ctime 改变文件时间
  • -mtime 修改文件内容
  • -mtime +10 10天前
  • -mtime -10 10天内
  • -mtime 10 前10天当天的
  • find /var/log/ -mtime -10
  • -size 25k 等于25k的文件
  • -size +25k 大于25k
  • -size -1M 1M内的文件
  • -inum 通过i结点查找 ls -i 查看i结点
  • ####多条查找
  • -a 逻辑与
  • -o 逻辑或
  • find /etc/ -szie +20k -a -size -50k 查找 /etc/目录下 大小20k且小于50k的文件


-exec 将第一个命令执行的结果 ,交给第二个命令处理

  • find /etc/ -size +20k -a -size -50k -exec ls -al {} ;

字符串命令:grep,在文件中搜索包含字符串的行

  • grep [选项] 字符串 文件名
  • grep "good" abc.txt #在abc.txt 文件中查找包含good的行
原文地址:https://www.cnblogs.com/veryvalley/p/10124378.html