当前位置: 首页> 房产> 家装 > 人才交流网站建设与设计_网站备案收费吗_短视频seo软件_百度小说搜索风云榜排行榜

人才交流网站建设与设计_网站备案收费吗_短视频seo软件_百度小说搜索风云榜排行榜

时间:2025/7/9 1:55:18来源:https://blog.csdn.net/CharlesYuangc/article/details/145031799 浏览次数:0次
人才交流网站建设与设计_网站备案收费吗_短视频seo软件_百度小说搜索风云榜排行榜

Linux获取文本部分内容

  • 前言
  • 场景
    • 获取前几行内容
    • 获取末尾几行内容
    • 获取中间内容
      • head 命令 + tail 命令 结合
      • sed 命令
      • awk 命令

前言

test.log 文本内容如下:
注意:内容 a1004a1005之间有一空行)

[root@gaussdb002 tmp]# cat test.log 
a1001
a1002
a1003
a1004a1005
a1006
a1007
a1008
[root@gaussdb002 tmp]# 

场景

获取前几行内容

head 命令
语法: head -n <行数> 文件名

-n <行数>:指定要显示的行数。如果不指定 -n 参数,默认输出前 10 行。

例如:获取前 3行 数据。

[root@gaussdb002 tmp]# head -n 3 test.log 
a1001
a1002
a1003
[root@gaussdb002 tmp]# 

获取末尾几行内容

tail 命令
语法: tail -n <行数> 文件名

-n <行数>:指定从文件末尾显示的行数。如果不指定 -n 参数,默认输出最后 10 行。

例如:获取末尾 3行 数据。

[root@gaussdb002 tmp]# tail -n 3 test.log 
a1006
a1007
a1008
[root@gaussdb002 tmp]# 

获取中间内容

  1. 使用 vim 编辑文件,打开行号(输入:set number
    在这里插入图片描述

  2. 实现:获取 第3行 ~ 第6行 之间的数据。

实现此需求方式有以下几种:

head 命令 + tail 命令 结合

[root@gaussdb002 tmp]# head -n 6 test.log  | tail -n +3 
a1003
a1004a1005
[root@gaussdb002 tmp]# 

若内容较多,可将内容重新输出到 文件中:

[root@gaussdb002 tmp]# head -n 6 test.log  | tail -n +3 > temp.log
[root@gaussdb002 tmp]# cat temp.log 
a1003
a1004a1005
[root@gaussdb002 tmp]# 

sed 命令

sed 命令
语法: sed -n '<起始行>,<结束行>p' 文件名

-n:禁止自动打印输出,只输出匹配的行。
<起始行>,<结束行>p:表示从 <起始行> 到 <结束行> 之间的行进行打印,p 是 print 的缩写。

[root@gaussdb002 tmp]# sed -n '3,6p' test.log 
a1003
a1004a1005
[root@gaussdb002 tmp]# 

awk 命令

awk 命令
语法: awk '条件 {动作}' 文件名

NR:表示当前处理的行号。
条件:定义在什么条件下执行 {动作},例如 NR>=3 && NR<=5。
{动作}:在满足条件时执行的操作,默认是打印匹配行。

[root@gaussdb002 tmp]# awk 'NR>=3 && NR<=6' test.log 
a1003
a1004a1005
[root@gaussdb002 tmp]# 
关键字:人才交流网站建设与设计_网站备案收费吗_短视频seo软件_百度小说搜索风云榜排行榜

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: