首页 > 系统相关 >Linux文件管理知识:查找文件

Linux文件管理知识:查找文件

时间:2023-08-03 23:33:29浏览次数:48  
标签:bin 文件 知识 查找文件 命令 usr Linux locate find

前几篇文章一一介绍了LINUX进程管理控制命令及网络层面的知识体系,综所周知,一个linux系统是由很多文件组成的,那么既然有那么多文件,那我们该如何管理这些文件呢?

Linux中的所有数据都是以文件形式存在的,那么所有文件分别被归类到不同的文件系统中。而文件系统则是一种树型结构,通俗的理解为目录。

在linux系统中,你所做的每一步操作及所执行的每个命令都是基于文件系统底层逻辑来呈现出来的。

 

说到管理linux文件,首先您得先找见它!通过本节可以了解linux的文件管理第一步:查找文件等。今天这篇文章主要介绍下两个用来在linux系统中查找文件的工具或者命令程序。

• locate –通过名称来查找文件

• find – 在一个目录层次结构中搜索文件

locate - 查找文件的简单方法

locate 命令程序会执行一次快速的路径名数据库搜索进程,并且输出结果是与给定字符串相匹配的路径名称。locate 命令程序只能依据文件名来查找文件。

例如,找到所有名字以“zip”开头的文件:

[root@linuxprobe ~]$ locate bin/zip

locate 命令程序执行搜索路径名数据库进程,并输出任一个包含字符串“bin/zip”的路径名:

/usr/bin/zip

/usr/bin/zipgrep

/usr/bin/zipinfo

/usr/bin/zipsplit

或者结合其它命令工具,例如grep 命令,来执行更全面的搜索:

[root@linuxprobe ~]$ locate zip | grep bin

/bin/bunzip2

/bin/bzip2

/bin/gunzip

/bin/gzip

/usr/bin/funzip

/usr/bin/gpg-zip

/usr/bin/prezip

/usr/bin/prezip-bin

/usr/bin/unzip

/usr/bin/zip

/usr/bin/zipgrep

/usr/bin/zipinfo

/usr/bin/zipsplit

 

扩展知识:

有时候locate命令程序不能正常工作,但是呢第二天它就正常工作了。解决方法:首先转换为超级用户身份,在提示符下运行updatedb 命令,可以手动运行updatedb 命令程序即可。

目前,不同版本的Linux发行版中locate 命令程序有很多演变,不过它们都会拥有一定重叠的选项集合,可通过查看locate 命令的手册来确定安装了哪个版本的locate 命令程序。

 

find - 查找文件的高阶之路

find 命令程序支持基于给定的各种属性搜索查找文件。find 命令程序的魅力所在就是它能够找到符合特定标准属性的文件。

1)最简单的查找方式:

find 命令程序支持接收多个目录名来执行搜索查找。

例如:

[root@linuxprobe ~]$ find ~ //输出家目录的路径名列表

可想而知,查找结果会产生很大的列表。那我们可以尝试使用wc 命令程序来计算并显示出文件的数量:

[root@linuxprobe ~]$ find ~ | wc

-l46052

find 命令程序支持的常见文件类型测试条件如下:

表: find 文件类型

文件类型 描述

b 块特殊设备文件

c 字符特殊设备文件

d 目录

f 普通文件

l 符号链接

 

2)通过文件大小和文件名搜索查找

例如:

查找所有文件名匹配通配符模式“*.JPG”和文件大小大于1M 的普通文件:

[root@linuxprobe ~]$ find ~ -type f -name "*.JPG" -size +1M | wc -l

237

//引入-name 测试条件,后面跟通配符模式。

//双引号引起来的作用就是阻止shell 展开路径名进程。

//引入-size 测试条件,后跟字符串“+1M”。加号“+”代表正在寻找文件大小大于指定数的文件。若以减号“-”开头,那就代表查找小于指定数的文件。若没有符号意味着“精确匹配这个数”。字母“M”表明测量单位是兆字节。测量单位的指定如下表:

表: find 大小单位

字符 单位

b 512 个字节块。如果没有指定单位,则这是默认值。

c 字节

w 两个字节的字

k 千字节(1024 个字节单位)

M 兆字节(1048576 个字节单位)

G 千兆字节(1073741824 个字节单位)

 

以上列出的只是冰山一角,find 命令手册有更详细的说明。

总结:

find 命令程序搜索目录树以查找一个文件或一组文件。它遍历目录树并报告与用户规范匹配的文件的所有匹配项。查找程序包括非常强大的搜索功能。

locate 程序扫描一个或多个文件名数据库,并显示任何匹配项。如果文件在上次文件名数据库更新期间存在,则可以将其用作非常快速的查找命令。

当然,linux文件类型是不可或缺的一部分,在Linux中,基本的文件类型有以下三种:

1) 普通文件

普通文件基本包括文本文件、源码文件、可执行文件等。

2) 目录

目录可以包含普通文件和特殊文件,目录相当于Windows系统和Mac 系统

中的文件夹。

3) 设备文件

设备文件就是Linux 与外部设备(如光驱,打印机等)进行通信所必需的文件。

关于linux系统文件查找命令的运用魅力不止如此,今天的介绍仅仅一小部分,所以强烈建议大家可以参考下《GNU Findutils 4.9.0》及《linux就该这么学》这两本书,对于linux系统文件管理层面的介绍很详细!

标签:bin,文件,知识,查找文件,命令,usr,Linux,locate,find
From: https://www.cnblogs.com/cainiaoyige1/p/17604776.html

相关文章

  • Linux字符界面以及图形化界面切换方法
    字符界面init3切换到字符界面init各个级别介绍:0—停运1—单用户模式2—没有使用(可由用户定义)3—完全的多用户模式4—没有使用(可由用户定义)5—完全的多用户模式(带有基于X的登录屏幕)6—重新引导如果你使用的是文本登录屏幕,你是在运行级别3中操作。如果你使用的是......
  • linux编程
    1.读取文件流程:1.打开文件2.读/写文件3.关闭文件2.阻塞和非阻塞是文件的一种属性,只有设备文件和网络文件才有的特性3.fcntl(fd1,F_DUPFD,0)//0被占用,fcntl使用文件描述符表中可用的最小文件描述符4.fcntl(fd1,F_DUPFD,7)//7被占用,fcntl使用文件描述符表中可......
  • Linux之DNS域名解析服务
    目录一、DNS二、正向解析一、DNSDNS:将域名转化成ip地址原因:因为ip地址太难记忆了方法一:本地host文件分散式:网络环境www.baidu.comhost文件有直接访问没有的话去找dns缓存dns缓存服务器有直接告诉你没有才会去问根域服务器根域服务器的他管理的主机域类型ww......
  • 红帽SELinux资料-翻译---第三章-Targeted策略
        红帽企业Linux7SELinux用户和管理员指南  翻译者:李天聪        第三章    Targeted策略Targeted策略是红帽企业Linux的默认SELinux策略。当使用targeted策略时,目标进程运行在受限的域中,非目标进程运行在不受限的域中。例如,默认情况下,登......
  • Linux之编译安装
    目录Linux编译安装实例1.编译安装步骤2.编译安装实际操作2.1tar解压2.2./configure2.3make编译2.4makeinstall2.5建立软链接2.6测试Linux编译安装实例1.编译安装步骤编译安装自由度最高复杂度最高安装过程第一步:#tar解压并释放源代码到指定目录第二步:./con......
  • Linux环境编程day01--库与环境变量
    UNIX系统简介:1970年于美国贝尔实验室,作者肯.汤普逊和丹尼斯.里奇UNIX是最早的多用户、多任务、支持多种CPU架构,高稳定性、高可靠性、高安全性既能构建大型关键型业务系统的服务器(银行、电信公司等),也能支持移动嵌入式设备Minix是一种开源的基于微内核架构的类UNIX计算机操作......
  • 红帽SELinux资料-翻译---第二章-SELinux安全上下文
         红帽企业Linux7SELinux用户和管理员指南  翻译者:李天聪        第一章    SELinux安全上下文进程和文件标有包含附加信息的SELinux上下文,例如SELinux用户、角色、类型以及级别(可选)。运行SELinux时,所有这些信息都用于做出访问控制......
  • 基于GPT搭建私有知识库聊天机器人(四)问答实现
    前文链接:基于GPT搭建私有知识库聊天机器人(一)实现原理基于GPT搭建私有知识库聊天机器人(二)环境安装基于GPT搭建私有知识库聊天机器人(三)向量数据训练在前面的文章中,我们介绍了如何使用GPT模型搭建私有知识库聊天机器人的基本原理、环境安装、数据向量化。本文将进一步介绍如何使用lang......
  • 基于GPT搭建私有知识库聊天机器人(五)函数调用
    文章链接:基于GPT搭建私有知识库聊天机器人(一)实现原理基于GPT搭建私有知识库聊天机器人(二)环境安装基于GPT搭建私有知识库聊天机器人(三)向量数据训练基于GPT搭建私有知识库聊天机器人(四)问答实现OpenAI在6月13日发布了几个重磅更新,其中包括:开放了16k上下文的GPT-3.5-Turbo模型gpt-3.5-t......
  • 基于GPT搭建私有知识库聊天机器人(六)仿chatGPT打字机效果
    文章链接:基于GPT搭建私有知识库聊天机器人(一)实现原理基于GPT搭建私有知识库聊天机器人(二)环境安装基于GPT搭建私有知识库聊天机器人(三)向量数据训练基于GPT搭建私有知识库聊天机器人(四)问答实现基于GPT搭建私有知识库聊天机器人(五)函数调用在前几篇文章中,我们已经了解了如何使用GPT模......