`
berrywu
  • 浏览: 127881 次
  • 性别: Icon_minigender_1
  • 来自: 福建
社区版块
存档分类
最新评论

Linux知识三:高效查找文件

阅读更多

如何查找文件:find 目录/. -name 文件:查找文件在指定目录/当前目录下指定的文件名(eg:find / -name httpd -ctime 0[多少天内])。
find最强大,什么都能查,find 是直接在硬盘上搜寻,功能强大,但耗硬盘,一般不要用。
locate能查所以,但跟whereis一样都是查数据库里的内容,locate 同上,不过文件名是部分匹配。
which只能查可执行文件,which 只能寻找执行文件 ,并在PATH变量里面寻找。
whereis只能查二进制文件、说明文档,源文件等,whereis 从linux文件数据库(/var/lib/slocate/slocate.db)寻找,所以有可能找到刚刚删除,或者没有发现新建的文件。
find [PATH] [option] [action],参数:
 1. 与时间有关的参数:
    -atime n :n 为数字,意义为在 n 天之前的『一天之内』被 access 过的档案;
    -ctime n :n 为数字,意义为在 n 天之前的『一天之内』被 change 过状态的档案;
    -mtime n :n 为数字,意义为在 n 天之前的『一天之内』被 modification 过的档案;
    -newer file :file 为一个存在的档案,意思是说,只要档案比 file 还要新,
                  就会被列出来~
 2. 与使用者或群组名称有关的参数:
    -uid n :n 为数字,这个数字是使用者的账号 ID,亦即 UID ,这个 UID 是记录在
             /etc/passwd 里面与账号名称对应的数字。这方面我们会在第四篇介绍。
    -gid n :n 为数字,这个数字是群组名称的 ID,亦即 GID,这个 GID 记录在
             /etc/group,相关的介绍我们会第四篇说明~
    -user name :name 为使用者账号名称喔!例如 dmtsai
    -group name:name 为群组名称喔,例如 users ;
    -nouser    :寻找档案的拥有者不存在 /etc/passwd 的人!
    -nogroup   :寻找档案的拥有群组不存在于 /etc/group 的档案!
                 当您自行安装软件时,很可能该软件的属性当中并没有档案拥有者,
                 这是可能的!在这个时候,就可以使用 -nouser 与 -nogroup 搜寻。
 3. 与档案权限及名称有关的参数:
    -name filename:搜寻文件名称为 filename 的档案;
    -size [+-]SIZE:搜寻比 SIZE 还要大(+)或小(-)的档案。这个 SIZE 的规格有:
                    c: 代表 byte, k: 代表 1024bytes。所以,要找比 50KB
                    还要大的档案,就是『 -size +50k 』
    -type TYPE    :搜寻档案的类型为 TYPE 的,类型主要有:一般正规档案 (f),
                    装置档案 (b, c), 目录 (d), 连结档 (l), socket (s),
                    及 FIFO (p) 等属性。
    -perm mode  :搜寻档案属性『刚好等于』 mode 的档案,这个 mode 为类似 chmod
                  的属性值,举例来说, -rwsr-xr-x 的属性为 4755 !
    -perm -mode :搜寻档案属性『必须要全部囊括 mode 的属性』的档案,举例来说,
                  我们要搜寻 -rwxr--r-- ,亦即 0744 的档案,使用 -perm -0744,
                  当一个档案的属性为 -rwsr-xr-x ,亦即 4755 时,也会被列出来,
                  因为 -rwsr-xr-x 的属性已经囊括了 -rwxr--r-- 的属性了。
    -perm +mode :搜寻档案属性『包含任一 mode 的属性』的档案,举例来说,我们搜寻
                  -rwxr-xr-x ,亦即 -perm +755 时,但一个档案属性为 -rw-------
                  也会被列出来,因为他有 -rw.... 的属性存在!
 4. 额外可进行的动作:
    -exec command :command 为其它指令,-exec 后面可再接额外的指令来处理搜寻到
                    的结果。
    -print        :将结果打印到屏幕上,这个动作是预设动作!

分享到:
评论

相关推荐

    linux内核知识系列:系统调用

    Linux内核知识系列:系统调用 在计算机操作系统中,系统调用是用户程序与操作系统交互的主要手段。在Linux环境中,系统调用是用户空间进程请求操作系统服务的接口,允许程序执行特权操作,如文件I/O、进程管理、...

    linux文件系统基础知识

    - **ReiserFS**: 基于B树结构的文件系统,提供高效的数据查找。 - **udf**: 可擦写光盘的文件系统,如DVD和蓝光光盘。 2. 文件系统分配策略: - **块分配**: 分配文件所需的磁盘空间,每次扩展文件时可能会导致...

    Linux基础课件Linux系统文件查找find命令共12

    3. **大小条件**:`-size`选项允许我们根据文件大小来查找文件,如`+100M`表示查找大于100MB的文件。 4. **名称匹配**:`-name`选项可以指定文件名或通配符模式,如`-name "*.txt"`将查找所有.txt后缀的文件。 5. ...

    Qt文件浏览器,Linux

    通过这个项目,开发者不仅可以学习到如何在Linux下利用QT框架开发应用,还可以深入理解文件系统操作、GUI设计和事件驱动编程等知识。 总的来说,这个Qt文件浏览器项目为学习者提供了一个实际的、完整的案例,有助于...

    Linux基础课件-Linux系统文件查找-locate命令.pptx

    `locate`命令是Linux系统中一种快速、高效的文件查找工具,它通过预先建立的文件系统数据库来查找文件,相比`find`命令,其速度更快。以下是关于`locate`命令的详细知识: **locate命令的作用** `locate`命令主要...

    linux环境下排序查找C源码,包括makefile

    在Linux环境下进行C语言编程时,排序和查找是常见的操作,尤其在处理大量数据时更为重要。本资源提供了相关的C源码以及一个`makefile`,帮助开发者更高效地管理和编译项目。以下是对这些知识点的详细解释: 1. **...

    linux下C编程高效手册

    掌握这些知识对于高效编程至关重要,能够帮助开发者更加自信和有效地在Linux环境下开发出健壮的C语言程序。随着后续内容的展开,还将介绍进程管理、文件操作、时间概念、信号处理、消息管理和线程操作等高级主题,...

    linux文件系统概念解释

    ### Linux文件系统概念详解 #### 文件的逻辑结构与类型 在深入探讨Linux文件系统之前,首先需要理解文件的逻辑结构...无论是对于开发者还是普通用户,Linux文件系统都是理解和操作现代计算机系统不可或缺的基础知识。

    Linux查询并删除文件 讲解

    - 使用`find`命令结合通配符查找包含特定字符串的所有文件: ``` find /project/path -type f -name "*specific_string*" ``` 2. **确认文件** - 将查询结果打印出来,手动检查是否有误: ``` find /project...

    LINUX 基础知识学习

    - **find**:根据条件查找文件,如`find / -name "myfile"`在根目录下搜索名为myfile的文件。 - **grep**:在文件中搜索特定字符串,如`grep "hello" file.txt`。 - **sudo**:以超级用户权限执行命令,如`sudo ...

    模拟linux文件系统

    本篇文章将深入探讨“模拟Linux文件系统”的相关知识,主要涉及Linux文件系统的结构、工作原理以及如何通过编程来模拟这一系统。 首先,我们了解Linux文件系统的层次结构。在Linux中,一切皆为文件,包括硬件设备、...

    linux文件系统结构分析

    在Linux操作系统中,文件系统是组织和存储数据的基础架构,它负责管理磁盘上的文件和目录,使得用户和进程能够高效地访问、读写和管理数据。本篇将深入探讨Linux文件系统的结构,并阐述进程如何操作文件。 首先,...

    linux 文件系统组成

    这种结构清晰地定义了文件系统的层次关系,便于管理和查找文件。 #### 重要目录介绍 1. **/bin**:此目录包含了一系列基本命令,这些命令对于系统的正常运行至关重要。例如`ls`(列出文件和目录)、`cp`(复制文件...

    linux文件目录和命令.pdf

    Linux是一种自由和开放源码的类Unix操作...通过以上知识点的介绍,可以看出Linux系统无论是在其架构设计,还是在实际使用过程中,都强调了简洁、高效和灵活性,这也是Linux能够在众多操作系统中脱颖而出的原因之一。

    linux C语言 使用结构体对文件操作 读 写 查找

    6. **查找文件**:可以结合`access()`函数检查文件是否存在,或者遍历目录结构,使用`opendir()`, `readdir()`和`closedir()`函数来查找特定文件。 7. **关闭文件**:最后,别忘了用`fclose()`关闭文件句柄。 ```c ...

    Linux基础课件-Linux系统文件查找-find命令.pptx

    在Linux操作系统中,掌握文件查找命令是至关重要的,特别是find命令。find命令允许用户在文件系统中高效地定位文件,无论文件隐藏得多么深。在本篇内容中,我们将深入探讨find命令的作用、基本格式以及多种实用的...

    Linux网络操作系统基础:常用Linux命令.ppt

    Linux是一个广泛使用的开源操作系统,它的命令行界面提供了高效且灵活的系统管理工具。本章将深入讲解Linux的基础知识,特别是常用的命令,包括文件和目录的操作,以及系统信息查询。 一、Linux命令基础 Linux命令...

    Linux新手必须学会的十二个命令

    用户可以通过这两个命令来查找文件。 知识点:Find 和 Locate 命令可以用来搜索文件。 7. Cp 命令:Cp 命令用来复制文件。用户可以通过 Cp 命令来创建一个文件的副本。 知识点:Cp 命令可以用来复制文件。 8. Mv...

    linux\linux命令速查手册

    ### Linux命令速查手册知识点详解 #### 文件传输命令 在Linux系统中,文件传输命令是进行数据交换的基础工具,它们帮助用户实现不同主机间的文件共享和传输。 ##### FTP (File Transfer Protocol) - **简介**: ...

Global site tag (gtag.js) - Google Analytics