如何在Linux命令行中快速找到某个文件的第n行
工作中会有好多千奇百怪的需求,例如:怎样在Linux命令行中快速找到某个文件的第n行?怎么显示从第x行到第y行之间的内容?
想要实现以上疗效linux新建文件夹指令,虽然有好多办法可以实现。
例如,如果要显示第13行内容,可以使用head命令组合tail命令linux新建文件夹指令,如下:
head -13 file_name | tail +13
比如:
head -13 default | tail +13
输出:
或则,使用sed命令:
sed -n '13p' file.txt
比如:
sed -n '13p' default
输出:
再例如,显示第20行到第25行之间的内容,同样使用head命令组合tail命令,如下:
head -25 file_name | tail +20
比如:
head -25 default | tail +20
输出:
或则使用sed命令:
sed -n '20,25p' lines.txt
比如:
sed -n '20,25p' default
输出:
下边我们详尽瞧瞧。
嵌入式物联网须要学的东西真的特别多,千万不要学错了路线和内容,引起薪水要不起来!
无偿分享你们一个资料包,差不多150多G。上面学习内容、面经、项目都比较新也比较全!某鱼上买恐怕起码要好几十。
点击这儿找小助理0元发放:加陌陌发放资料
使用head命令和tail命令组合来显示文件的特定行
这个方式是我觉得最简单的方式,且常常使用。
复印某一行内容
head命令和tail命令都用于在终端中显示文件的内容。
使用如下句型显示文件手指定的第x行:
head -x file_name | tail +x
上述代码中的x即为行号,例如上文中提及的事例中要显示第16行:
$ head -16 default | tail +16
输出:
关于head和tail命令,虽然对其不熟悉,按照名子也能猜下来,head命令从文件的开头获取文件内容,而tail命令从文件的末尾开始获取内容。
head-x命令部份,是获取文件的前x行,之后将这个结果重定向到tail命令,而tail命令将显示从第x行开始的内容。
所以,上述命令的逻辑就是首先获取文件的开头13行内容,之后在从其第13行开始到最后的所有内容,很其实获取的就只有第13行这一行。
获取指定范围的行
如今我们使用head和tail组合命令来显示某一范围的内容。
要显示文件的第x行到第y行(同时会包含第x行和第y行),可以使用如下句型命令:
head -y file_name | tail +x
例如,如果我们要复印文件中第30行到第35行中的内容,如下代码:
$ head -35 default | tail +30
输出:
使用sed命令显示文件中的特定行
使用sed命令,可以有多种复印特定行内容的技巧。
例如,要显示文件的第10行,可以使用如下形式:
sed -n '10p' file_name
假如要复印从第x行到第y行,可使用如下方式:
$ sed -n '5,15p' default
输出:
使用awk命令复印文件中的指定行
awk命令可能看上去比较复杂,使用它须要有一个学习的过程。但与sed一样,awk在编辑和操作文件内容方面功能很强悍。
使用awk查看文件的第n行,可参考如下代码:
$ awk 'NR==6' default
输出:
上述代码会显示文件的第6行linux操作系统怎么样,NR表示“当前记录编号”。
复印从x行到第y行linux公社,可使用如下形式:
$ awk 'NR>=30 && NR<=35' default
输出:
其句型与大多数编程语言的句型类似。
怎样样,总体是不是很简单?还等哪些,赶紧一个一个命令敲上去吧!