Linux:文件查找命令(05)

167 阅读2分钟

1.find命令

find是Linux中一个搜索功能强大的工具, 它能够根据文件的属性, 查找对应的磁盘文件, 如文件名、文件类型、文件大小、文件的目录深度等

  • -name/-iname:以文件名查找
  • -type:以文件类型查找
  • -size:以文件大小查找

(1)以文件名查找

image.png 命令格式为:find 查找目录 -maxdepth n -name 查找的文件名;其中,maxdepth/mindepth指定最多/少搜索目录的层数为n

(2)以文件类型查找

f-一般文件、d-目录、s-套接字文件、p-管道文件、l-链接文件、b-块文件、c-字符文件) image.png

(3)以文件大小查找

单位可以是b(字节)、k(千字节)、M(兆字节)、G(吉字节) image.png 命令格式为:find 搜索的路径 -size [+|-]文件大小

2.grep命令

用于查找文件里符合条件的字符串

  • -r: 如果需要搜索目录中的文件内容, 需要进行递归操作, 必须指定该参数
  • -i: 对应要搜索的关键字, 忽略字符大小写的差别
  • -n: 在显示符合样式的那一行之前,标示出该行的列数编号

image.png

3.locate命令

locate是 Linux 系统中用于快速查找文件和目录的工具,它通过搜索预建的文件数据库来定位文件,相比于 find 命令,locate 通常能更快地给出搜索结果,因为它不需要实时遍历文件系统

locate 命令依赖于一个由 updatedb 程序定期更新的数据库(通常位于 /var/lib/mlocate/mlocate.db),该数据库包含了系统中所有文件和目录的路径信息。updatedb 一般会通过系统的定时任务(如 cron)在系统空闲时自动更新

image.png -r表示使用正则表达式搜索;-n用于指定显示的查找的结果数量;-i指的是搜素时忽略大小写