当前位置:首页 >热点 >如何在 Linux 命令行中显示某个文件中指定的几行文字 根据名字也能猜出来

如何在 Linux 命令行中显示某个文件中指定的几行文字 根据名字也能猜出来

2024-07-01 00:13:35 [百科] 来源:避面尹邢网

如何在 Linux 命令行中显示某个文件中指定的命令某几行文字

系统 Linux 在 Linux 命令行中快速找到某个文件的第 n 行?如何显示从第 x 行到第 y 行之间的内容?

工作中会有很多千奇百怪的需求,比如:如何在 Linux 命令行中快速找到某个文件的行中显示行文第 n 行?如何显示从第 x 行到第 y 行之间的内容?

如何在 Linux 命令行中显示某个文件中指定的几行文字 根据名字也能猜出来

事实上,这个任务会有不止一种方法来实现。文件

如何在 Linux 命令行中显示某个文件中指定的几行文字 根据名字也能猜出来

比如,中指字假如要显示第 13 行内容,命令某可以使用 head 命令组合 tail 命令,行中显示行文如下:

如何在 Linux 命令行中显示某个文件中指定的几行文字 根据名字也能猜出来

head -13 file_name | tail +13

或者,使用​​ sed 命令​​:

sed -n '13p' file.txt

再比如,显示第 20 行到第 25 行之间的命令某内容,同样使用 head 命令组合 tail 命令,行中显示行文如下:

head -25 file_name | tail +20

或者使用 ​​sed 命令​​:

sed -n '20,25p' lines.txt

下面我们详细看看。

使用 head 命令和 tail 命令组合来显示文件的中指字特定行

这个方法是我认为最简单的方法,且经常使用。命令某

打印某一行内容

head 命令和 tail 命令都用于在终端中显示文件的行中显示行文内容。

使用如下语法显示文件中指定的文件第 x 行:

head -x file_name | tail +x

上述代码中的 x 即为行号,比如上文中提到的例子中要显示第 13 行:

$ head -13 lines.txt | tail +13
This is line number 13


关于 head 和 tail 命令,即使对其不熟悉,根据名字也能猜出来,head 命令从文件的开头获取文件内容,而 tail 命令从文件的末尾开始获取内容。

head -x 命令部分,是获取文件的前 x 行,然后将这个结果重定向到 tail 命令,而 tail 命令将显示从第 x 行开始的内容。

所以,上述命令的逻辑就是首先获取文件的开头 13 行内容,然后在从其第 13 行开始到最后的所有内容,很显然获取的就只有第 13 行这一行。

获取指定范围的行

现在我们使用 head 和 tail 组合命令来显示某一范围的内容。

要显示文件的第 x 行到第 y 行(同时会包含第 x 行和第 y 行),可以使用如下语法命令:

head -y lines.txt | tail +x

比如,假如我们要打印文件中第 20 行到第 25 行中的内容,如下代码:

$ head -25 lines.txt | tail +20
This is line number 20
This is line number 21
This is line number 22
This is line number 23
This is line number 24
This is line number 25


使用 sed 命令显示文件中的特定行

使用 sed 命令,可以有多种打印特定行内容的方法。

比如,要显示文件的第 10 行,可以使用如下方式:

sed -n '10p' file.txt

如果要打印从第 x 行到第 y 行,可使用如下方法:

$ sed -n '3,7p' lines.txt 
This is line number 3
This is line number 4
This is line number 5
This is line number 6
This is line number 7


使用 awk 命令打印文件中的指定行

awk 命令可能看起来比较复杂,使用它需要有一个学习的过程。但与 sed 一样,awk 在编辑和操作文件内容方面功能很强大。

使用 awk 查看文件的第 n 行,可参考如下代码:

$ awk 'NR==5' lines.txt 
This is line number 5


上述代码会显示文件的第 5 行,NR 表示“当前记录编号”。

打印从 x 行到第 y 行,可使用如下方式:

$ awk 'NR>=20 && NR<=25' lines.txt 
This is line number 20
This is line number 21
This is line number 22
This is line number 23
This is line number 24
This is line number 25


其语法与大多数编程语言的语法类似。

责任编辑:庞桂玉 来源: TIAP Linux

(责任编辑:时尚)

    推荐文章
    热点阅读