Linux 文件内容的查询与统计

发布于:2025-06-12 ⋅ 阅读:(17) ⋅ 点赞:(0)

文件内容的查阅与统计

文件内容的查询

cat 指令

concatenate,连接文件并打印到标准输出设备上(查看文件)。

  • 用法1: cat 文件路径
    • 常用选项: -n 列出行号
      在这里插入图片描述
  • 用法2: tac
    • 倒序显示(应用:查看日志)
      在这里插入图片描述

head 指令

查看一个文件的前n行,默认显示前10行。

  • 用法:
    • head -数字 文件路径 【n表示数字】(简略写法)
    • head -n 数字 文件路径(标准写法)

在这里插入图片描述
n为负数时,负的行数不显示
在这里插入图片描述

tail 指令

查看一个文件的末n行,默认显示后10行

  • 用法1:
    • tail -数字 文件路径 【n表示数字】(简略写法)
    • tail -n 数字 文件路径(标准写法)
  • 用法2:tail -f 文件路径
    • 持续检测文件内容,一般用于查看系统日志

less 指令

查看文件,支持翻页

  • 用法:less 文件路径
    • 操作指令:
      • 空格键:向下翻动一页
      • [pagedown]:向下翻动一页
      • [pageup]:向上翻动一页
      • j:下一行
      • k:上一行
      • G:移动到最后一页
      • g:移动到第一行
      • /字符串:向下搜索字符串
      • ?字符串:向上搜索字符串
      • q:退出 less

less /etc/passwd

在这里插入图片描述

统计与查找

wc 指令

Word Count 统计文件内容信息(行数,单词数,字节数)

  • 用法:wc -lwc需要统计的文件路径
  • 选项解释:
  • #-l:表示lines,行数
  • #-w:表示word,单词数 依照空格来判断单词数量
  • #-c:表示 bytes,字节数
    在这里插入图片描述

find 指令

查找文件(其参数很多)

  • 用法:find 路径范围 选项 选项的值
    • 常用选项:
      • type:按文件类型搜索(普通文件类型:f)
      • name:按文件名搜索
      • maxdepth:指定搜索深度
      • size:按文件大小

find ./ -type l
在这里插入图片描述

find ./ -name “day*”
在这里插入图片描述

find ./ -maxdepth 1 -name “m”
在这里插入图片描述

find ./ -size +20M -size -50M
在这里插入图片描述

输出重定向

一般命令会输出到终端中,有些则需要将命令结果保存到文件进行后续的分析或统计,这时需要使用到重定向技术

  • 输出重定向符号:

    • #>:覆盖输出,会覆盖原文件内容
    • #>>:追加输出,不会覆盖原文件内容,在末尾继续添加
  • 用法:指令> / >> 文件路径

    • 指令结果保存到指定文件中。若文件不存在则新建该文件
  • 追加重定向: ls >> d5.txt

    • 将当前目录的文件列表追加到d5.txt文件中(如果不存在该文件,会新建一个)。
      在这里插入图片描述
  • 覆盖重定向: ls > d5.txt

    • 将ls结果(当前目录的文件列表)覆盖写入d5.txt,即之前文件中的内容会被清空,并用新输出替换。
      在这里插入图片描述
  • 合并文件:cat 待合并的文件路径 1 待合并的文件路径 2…… 文件路径 n > 合并之后的文件路径

在这里插入图片描述

管道(重要)

管道符:|
管道一般可以用于"过滤",“特殊”,“扩展管理”。管道不能单独使用,必须配合指令来一起使用,主要是辅助作用

  • 用法:指令1 | 指令2
    • 以管道符作为分界线,指令1的输出是指令2的输入
    • 作用:实现“数据流”传递,让多个命令联合处理数据,而不需要中间保存到临时文件
ls -l | grep "txt"
  • 列出当前目录的详细文件清单,然后把输出传给grep “txt”,筛选出文件名包含“txt”的行
  • grep指令:主要用于过滤
  • 可以翻页的方式进行查看 /etc/ 下的文件:
ls /etc | less
+ ls /etc:列出/etc/目录中的所有文件和子目录。
+ |:管道,将ls的输出传递给后面的命令。
+ less:分页查看ls输出的结果,可以上下翻页浏览大目录。
  • 统计根目录下的文件个数:
ls / | wc -l
  • ls /:列出根目录 / 中的所有文件和文件夹(只列出文件名,不包含详细信息)。
  • |:管道,把ls /的输出传递给下一条命令。
  • wc -l:统计输入内容的行数,即文件或子目录的个数。