自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

如何在 Linux 命令行中顯示某個(gè)文件中指定的幾行文字

系統(tǒng) Linux
在 Linux 命令行中快速找到某個(gè)文件的第 n 行?如何顯示從第 x 行到第 y 行之間的內(nèi)容?

工作中會(huì)有很多千奇百怪的需求,比如:如何在 Linux 命令行中快速找到某個(gè)文件的第 n 行?如何顯示從第 x 行到第 y 行之間的內(nèi)容?

事實(shí)上,這個(gè)任務(wù)會(huì)有不止一種方法來實(shí)現(xiàn)。

比如,假如要顯示第 13 行內(nèi)容,可以使用 head 命令組合 tail 命令,如下:

head -13 file_name | tail +13

或者,使用?? sed 命令??

sed -n '13p' file.txt

再比如,顯示第 20 行到第 25 行之間的內(nèi)容,同樣使用 head 命令組合 tail 命令,如下:

head -25 file_name | tail +20

或者使用 ??sed 命令??

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

下面我們?cè)敿?xì)看看。

使用 head 命令和 tail 命令組合來顯示文件的特定行

這個(gè)方法是我認(rèn)為最簡(jiǎn)單的方法,且經(jīng)常使用。

打印某一行內(nèi)容

head 命令和 tail 命令都用于在終端中顯示文件的內(nèi)容。

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

head -x file_name | tail +x

上述代碼中的 x 即為行號(hào),比如上文中提到的例子中要顯示第 13 行:

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


關(guān)于 head 和 tail 命令,即使對(duì)其不熟悉,根據(jù)名字也能猜出來,head 命令從文件的開頭獲取文件內(nèi)容,而 tail 命令從文件的末尾開始獲取內(nèi)容。

head -x 命令部分,是獲取文件的前 x 行,然后將這個(gè)結(jié)果重定向到 tail 命令,而 tail 命令將顯示從第 x 行開始的內(nèi)容。

所以,上述命令的邏輯就是首先獲取文件的開頭 13 行內(nèi)容,然后在從其第 13 行開始到最后的所有內(nèi)容,很顯然獲取的就只有第 13 行這一行。

獲取指定范圍的行

現(xiàn)在我們使用 head 和 tail 組合命令來顯示某一范圍的內(nèi)容。

要顯示文件的第 x 行到第 y 行(同時(shí)會(huì)包含第 x 行和第 y 行),可以使用如下語法命令:

head -y lines.txt | tail +x

比如,假如我們要打印文件中第 20 行到第 25 行中的內(nèi)容,如下代碼:

$ 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 命令,可以有多種打印特定行內(nèi)容的方法。

比如,要顯示文件的第 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 命令可能看起來比較復(fù)雜,使用它需要有一個(gè)學(xué)習(xí)的過程。但與 sed 一樣,awk 在編輯和操作文件內(nèi)容方面功能很強(qiáng)大。

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

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


上述代碼會(huì)顯示文件的第 5 行,NR 表示“當(dāng)前記錄編號(hào)”。

打印從 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


其語法與大多數(shù)編程語言的語法類似。

責(zé)任編輯:龐桂玉 來源: TIAP
相關(guān)推薦

2023-02-07 09:49:26

Linux命令行合并文件

2022-11-02 08:20:43

Linux

2022-10-14 19:30:29

Linux

2023-03-21 09:31:30

Linux命令行文件夾

2019-08-15 15:00:31

Linux命令行PDF

2021-05-20 12:16:17

Linux命令Axel

2022-10-13 19:23:21

Linux命令行IP 地址

2018-04-25 10:46:05

Linux命令行日歷

2014-05-04 10:58:18

Linux命令行Linux發(fā)行版

2015-02-10 10:05:11

LinuxLinux命令

2016-10-20 09:57:58

Linux轉(zhuǎn)換工具

2022-10-18 14:52:36

2021-11-26 09:58:37

Linux命令瀏覽器

2018-03-29 15:58:55

Linux命令行編輯器

2022-11-18 12:47:51

LinuxAWS命令行工具

2015-12-16 16:01:13

2013-11-06 14:36:30

Linux命令行工具gcp

2015-12-30 14:47:01

LinuxDropbox訪問

2022-08-14 19:19:14

Linux

2014-09-16 10:09:40

Linux
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)