linux极简小知识:43、查看文本文件内容的正确姿势(上)——cat、head、tail、wc命令齐上阵【不容错过】

824 阅读2分钟

这是我参与11月更文挑战的第2天,活动详情查看:2021最后一次更文挑战

本篇是 linux极简小知识 系列的第43篇,介绍真实有用的linux知识,欢迎阅读查看!

简要介绍这几个命令的作用:

  • cat 显示所有的文本内容到终端。
  • head 查看文件的开头内容,通常指定 -n 查看前 n 行的内容。
  • tail 查看文件结尾开始的内容,同样,指定 -n 查看尾部 n 行的内容。
    • 指定 -f 选项,可以在文件内容更新后,显示的信息也同步更新。
  • wc 统计文本内容的信息,如行数、字符数、字节数等!

本文操作以一个有着 365 行的 my.txt 文件为例进行实际演示。

cat 命令

cat 命令用于查看文件中的所有内容。

$ cat my.txt
line-1
line-2
line-3
......省略
line-362
line-363
line-364
line-365

会将所有内容显示在屏幕上。

  • cat -n 会在输出时显示所有行的行号。
  • cat -b 对非空输出行号。

head 显示文件头部的内容

  • 默认显示前 10 行。
$ head my.txt
line-1
line-2
line-3
line-4
line-5
line-6
line-7
line-8
line-9
line-10
  • 指定显示前 n 行
$ head -n 6 my.txt
line-1
line-2
line-3
line-4
line-5
line-6

或直接指定 -numhead -6 my.txt

tail 查看文件尾部的内容

tail 使用

默认显示结尾最后10行的内容。

$ tail my.txt
line-356
line-357
line-358
line-359
line-360
line-361
line-362
line-363
line-364
line-365
  • 指定显示最后 n 行的内容
$ tail -6 my.txt
line-360
line-361
line-362
line-363
line-364
line-365

或者使用 -n 选项:tail -n 6 my.txt

tail -f 同步更新文件内容的变化【实时监控日志文件的变化】

文件有变化时同步显示出来:

$ tail -6f my.txt
line-360
line-361
line-362
line-363
line-364
line-365

tail -f logfile 对于实时查看和监控日志文件的更新非常有用和实用!

wc 统计文件信息

wc 是 Word-Count 的简写,主要用于单词(字符)的计数。

wc 默认输出的信息

$ wc my.txt
 365  365 3177 my.txt

输出内容的含义:

  • 第一列:文本文件的行数,包含空行和非空行。
  • 第二列:单词的个数,主要依据的是空格分隔的单词的个数
  • 第三列:文件的字节数。
  • 第四列:文件名

wc -l 查看文档的行数

--lines 选项。

$ wc -l my.txt
365 my.txt

wc -w 打印文件的单词书

--words 选项。

$ wc -w my1.txt
730 my1.txt

wc -c 统计文件内容的字节数

等同 --bytes

$ wc -c my.txt
3177 my.txt

wc -m 查看文件中的字符数

等同 --chars

$ wc -m my.txt
3177 my.txt

wc 统计多个文件

$ wc my.txt my1.txt
 365  365 3177 my.txt
 365  730 3177 my1.txt
 730 1095 6354 total

使用标准输入不显示文件名

借助标准输入,可以在 wc 结果中不显示文件名。

$ wc < my.txt
 365  365 3177