Linux 命令行与 shell 脚本编程大全 (3rd ed)(38):基本的 bash shell 命令 3.8.3

阅读数:8 2019 年 11 月 17 日 15:26

Linux命令行与shell脚本编程大全(3rd ed)(38):基本的bash shell命令 3.8.3

内容简介
这是一本关于 Linux 命令行与 shell 脚本编程的全方位教程,主要包括四大部分:Linux 命令行,shell 脚本编程基础,高级 shell 脚本编程,如何创建实用的 shell 脚本。本书针对 Linux 系统的新特性进行了全面更新,不仅涵盖了详尽的动手教程和现实世界中的实用信息,还提供了与所学内容相关的参考信息和背景资料。通过本书的学习,你将轻松写出自己的 shell 脚本。

(查看部分文件)

通常你要查看的数据要么在文本文件的开头,要么在文本文件的末尾。如果这些数据是在大型文件的起始部分,那你就得等catmore加载完整个文件之后才能看到。如果数据是在文件的末尾(比如日志文件),那可能需要翻过成千上万行的文本才能到最后的内容。好在 Linux 有解决这两个问题的专用命令。

1. tail命令

tail命令会显示文件最后几行的内容(文件的“尾部”)。默认情况下,它会显示文件的末尾 10 行。

出于演示的目的,我们创建了一个包含 20 行文本的文本文件。使用cat命令显示该文件的全部内容如下:

复制代码
$ cat log_file
line1
line2
line3
line4
line5
Hello World - line 6
line7
line8
line9
line10
line11
Hello again - line 12
line13
line14
line15
Sweet - line16
line17
line18
line19
Last line - line20
$

现在你已经看到了整个文件,可以再看看使用tail命令浏览文件最后 10 行的效果:

复制代码
$ tail log_file
line11
Hello again - line 12
line13
line14
line15
Sweet - line16
line17
line18
line19
Last line - line20
$

可以向tail命令中加入-n参数来修改所显示的行数。在下面的例子中,通过加入-n 2使tail命令只显示文件的最后两行:

复制代码
$ tail -n 2 log_file
line19
Last line - line20
$

-f参数是tail命令的一个突出特性。它允许你在其他进程使用该文件时查看文件的内容。tail命令会保持活动状态,并不断显示添加到文件中的内容。这是实时监测系统日志的绝妙方式。

2. head命令

head命令,顾名思义,会显示文件开头那些行的内容。默认情况下,它会显示文件前 10 行的文本:

复制代码
$ head log_file
line1
line2
line3
line4
line5
Hello World - line 6
line7
line8
line9
line10
$

类似于tail命令,它也支持-n参数,这样就可以指定想要显示的内容了。这两个命令都允许你在破折号后面输入想要显示的行数:

复制代码
$ head -5 log_file
line1
line2
line3
line4
line5
$

文件的开头通常不会改变,因此head命令并像tail命令那样支持-f参数特性。head命令是一种查看文件起始部分内容的便捷方法。

评论

发布