• Linux命令从入门到实战 ----查找文件和目录&压缩和解压缩


    搜索查找

    find查找文件和目录

    find指令将从指令指定目录下向下遍历其各个子目录,将满足条件的显示在终端

    基本用法 :find [搜素范围][选项]

    选项功能
    -name 查询方式按照指定的文件名查找模式查找文件
    -user查找属于指定用户名所有文件
    -size按照指定的文件大小查找 单位 b,c,w,k,M,G,
    -mtime n在过去 n 天内修改过的文件
    -ctime n在过去 n 天内创建的文件
    • 按照文件名查找
    # 查找当前目录下的bin文件
    find -name bin
    
    • 1
    • 2

    在这里插入图片描述

    • 使用通配符查找符合条件的文件
    # 查找指定目录下文件名结尾是.cfg的文件
    find /root -name "*.cfg"
    
    • 1
    • 2

    在这里插入图片描述

    • 查看文件大小并筛选文件大于50M的文件
    # 将文件大小转换成人性化的显示
    ls -lh
    # 查找文件大小大于50M的文件
    find /usr -size +50M
    
    • 1
    • 2
    • 3
    • 4

    其他参数的用法类似

    locate快速定位文件路径

    locate指令利用事先建立在系统中所有文件名称及路径的locate数据库快速实现定位给定的文件,Locate指令无需遍历整个文件系统,查询速度较快,为了保证差选结果的准确,管理员必须定期更新数据库

    基本语法
    locate 文件名
    第一次运行前,必须需要使用updatedb指令创建数据库

    grep 过滤查找

    grep 选项 查找内容 源文件
    查找文件中的内容

    选项功能
    -n显示匹配的行号
    • 查找 /etc/pwsswd文件中root出现的位置
    grep -n root /etc/passwd
    
    • 1

    在这里插入图片描述

    | 管道符

    表示将前要给命令处理的结果输出传递给后面的命令处理,

    基本语法 命令1 | 命令2

    • 查找文件名中带r的文件
    ls | grep r
    
    • 1

    在这里插入图片描述

    grep 在实际中常和 | 一起应用
    在实际过程中| grep这两个经常和其他命令搭配使用

    which命令用于查找文件。

    which指令会在环境变量$PATH设置的目录里查找符合条件的文件。

    • 查找java所在的位置
    which java
    
    • 1

    在这里插入图片描述

    • 查找ls所在的位置
    which ls
    
    • 1

    在这里插入图片描述

    whereis

    该指令会在特定目录中查找符合条件的文件。这些文件应属于原始代码、二进制文件,或是帮助文件。
    该指令只能用于查找二进制文件、源代码文件和man手册页,一般文件的定位需使用locate命令。

    简单来说就是查找应用程序的相关内容,
    基本用法:
    whereis 选项[-B <目录>...][-M <目录>...][-S <目录>...][文件...]
    最常用的几个选项和参数

    选项/参数作用
    -b只查找二进制文件
    -m只在设置的目录下查找说明文件
    B<目录>只在设置的目录下查找二进制文件
    -M<目录>只在设置的目录下查找说明文件
    • 找出ls命令位置和帮助文档的位置
    whereis ls 
    
    • 1

    左边第一个是命令位置,后面两个是帮助文档的位置(man)
    在这里插入图片描述

    • 将上面的信息分别显示
    whereis -b ls
    whereis -m ls
    
    • 1
    • 2

    在这里插入图片描述

    压缩和解压缩

    gzip/gunzip 压缩

    基础用法

    • gzip 文件 压缩文件 只能将文件压缩为.gz文件
    • gunzip 文件.gz 解压缩文件命令

    注意:

    • gzip只能压缩文件不能压缩目录
    • 直接压缩原文件,压缩后不会保留原文件
    • 同时压缩多个文件会产生多个压缩包

    当前的目录和文件大小
    在这里插入图片描述

    • 压缩文件aaa.txt文件
    # 压缩
    gzip aaa.txt 
    # 查看文件大小
    ll -h
    
    • 1
    • 2
    • 3
    • 4

    在这里插入图片描述

    • 解压缩,将aaa.txt.gz解压缩
    gunzip aaa.txt.gz
    
    • 1

    在这里插入图片描述

    zip/unzip压缩

    • zip [选项] xxx.zip 将要压缩的内容
      -r 选项,可以递归的压缩,可以压缩目录

    • unzip [选项][目标目录] xxx.zip 解压
      -d目录 指定解压后文件存放的位置

    • 压缩目录data下的所有文件
      在这里插入图片描述
      将目录data压缩为data.zip

    zip -r data.zip data
    
    • 1

    在这里插入图片描述

    • data.zip压缩文件加压到根目录下
    unzip -d / data.zip 
    
    • 1

    在这里插入图片描述
    注意:
    可以保留原文件

    tar打包

    基本用法
    tar [选项] xxx.tar.gz 将要打包的目录 打包目录

    选项功能
    -c产生.tar打包文件
    -v显示详细信息
    -f执行压缩后的文件名
    -z打包同时压缩
    -x解包.tar文件
    -C解压到指定目录
    • 打包并压缩 将aaa.txtdata目录打包并压缩
    tar -zcvf fish.tar.gr aaa.txt data
    
    • 1

    在这里插入图片描述

    • 解包并且解压缩到指定目录
    # 将fish,tar,gr  解压并且解压缩到 根目录下
    tar -zxvf fish.tar.gr -C /
    
    • 1
    • 2

    在实际生活和工作中tar使用的频率最高,因为它既可以打包又可以结合压缩工具进行压缩,平时我们安装的一些软件包都是用tar进行解包解压缩
    tar -zxvf 需要解压的内容 -C解压到的目录
    tar -zcvf 压缩包的名称 [文件/目录] [文件/目录] 、、、、

    总结

    本章讲解了如何在Linux搜索相关的操作,使用grep在文件中搜索内容,使用find、locate、which、whereis 搜索文件所在的位置,以及一个有趣的符号 |和其他命令的结合使用,后面还介绍了压缩解压缩和打包gzip,zip,tar 以及最常用的两行指令

  • 相关阅读:
    Vue3中Compositions API的使用(一)
    C# Onnx Yolov8 Detect 水果识别
    MySQL 由于 Java 日期 LocalDateTime 数据精度引发的线上问题
    计网--网络层
    论文阅读之《Color Constancy Using CNNs》
    Linux命令(126)之help
    Rust生命周期简介
    idea连接kerberos认证的hive
    华为机试 - 发广播
    进程管理(二)
  • 原文地址:https://blog.csdn.net/qq_52007481/article/details/127697226