首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何使用sed从第一行返回匹配并提前退出的东西?

要使用sed从第一行返回匹配并提前退出的东西,可以使用以下命令:

代码语言:txt
复制
sed -n '/pattern/p;q' file.txt

这里的/pattern/是要匹配的正则表达式,file.txt是要处理的文件。-n选项表示不自动打印输出,/pattern/p表示匹配到pattern的行就打印出来,q表示匹配到第一个匹配项后就退出。

例如,如果要在文件example.txt中查找第一行包含单词hello的内容,可以使用以下命令:

代码语言:txt
复制
sed -n '/hello/p;q' example.txt

这将返回第一行包含hello的内容,并提前退出。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Sed..

引用 选定范围:,(逗号) 多点编辑:e命令 文件读入:r命令 写入文件:w命令 追加(下):a\命令 插入(上):i\命令 下一个:n命令 变形:y命令 退出:q命令 保持和获取:h命令和...G # 获得内存缓冲区内容,追加到当前模板块文本后面。 l # 列表不能打印字符清单。 n # 读取下一个输入行,用下一个命令处理新而不是用第一个命令。...N # 追加下一个输入行到模板块后面并在二者间嵌入一个新,改变当前行号码。 p # 打印模板块。 P # (大写) 打印模板块第一。 q # 退出Sed。...: sed -n '/test/,/check/p' file 打印第5开始到第一个包含以test开始之间所有sed -n '5,/^test/p' file 对于模板test和west...,注意,正则表达式元字符不能使用这个命令: sed '1,10y/abcde/ABCDE/' file 退出:q命令 打印完第10后,退出sed sed '10q' file 保持和获取:h命令和G命令

1.6K20
  • 【linux命令讲解大全】081.sed:功能强大流式文本编辑器

    G # 获得内存缓冲区内容,追加到当前模板块文本后面。 l # 列表不能打印字符清单。 n # 读取下一个输入行,用下一个命令处理新而不是用第一个命令。...N # 追加下一个输入行到模板块后面并在二者间嵌入一个新,改变当前行号码。 p # 打印模板块。 P # (大写) 打印模板块第一。 q # 退出Sed。...T # 错误分支,最后一开始,一旦发生错误或者T,t命令,将导致分支到带有标号命令处,或者到脚本末尾。 w # 写追加模板块到file末尾。.../nologin 选定范围:,(逗号) 所有在模板test和check所确定范围内行都被打印: sed -n '/test/,/check/p' file 打印第5开始到第一个包含以test...后,退出sed: sed '10q' file 直到找到第一匹配项,退出sed: [root@node4 ~]# sed '/nginx/q' nginx.yml --- - hosts: nginx

    22310

    sed & awk 第二版学习(四)—— 基本 sed 命令

    d 命令删除整行,而不只是删除匹配部分。要删除一部分,可以使用替换命令制定一个空替换。...写命令应用之一是可以在脚本中使用它来生成同一源文件几个自定义版本。 12. 退出 退出(q)命令会使 sed 停止读取新输入行,停止将它们发送到输出。...使用退出命令文件中打印前 100 sed '100q' test 它打印每一,直到到达 100 并且退出。在这点上,该命令功能与 UNIX head 命令类似。...q 命令另一个可能得用法是在从文件中提取了想要内容后退出脚本。在 sed 已经找到它寻找东西之后继续扫描庞大文件是相当低效。...$/q }" $file 当 sed 找到了要寻找结尾(这一本身在第一个宏定义结束地方终止脚本),程序当即退出,并且不再继续遍历文件剩余部分寻找其它可能匹配

    6510

    sed 命令+正则表达式

    sed必须通过行号和正则表达式指定要改变文本行 sed怎样读取数据:     sed文件一个文本行或标准输入几种格式中读取数据,将之拷贝到一个编辑缓冲区,然后读命令行或脚本第一条命令,使用这些命令查找模式或定位行号编辑它...] 输入文件            第一具有sed命令解释器sed脚本文件     option如下:       n 不打印; sed不写编辑到标准输出,缺省为打印所有(编辑和未编辑),p命令可以用来打印编辑...     写文本到一个文件     d      删除定位                      q     第一个模式匹配完成后退出或立即退出     l      显示与八进制ASCII代码等价控制字符...如果在行尾匹配单词j e t 0 1,操作如下:j e t 0 1 $    如果只返回包含一个字符,操作如下:^ . $ 4、使用*匹配字符串中单字符或其重复序列    使用此特殊字符匹配任意字符或字符串重复多次表达式...如何才能真正掌握正则表达式正确加以灵活运用?本文将就此展开介绍,希望能够对那些渴望了解和掌握正则表达式读者有所 助益。

    3.4K20

    linux中sed命令总结

    G # 获得内存缓冲区内容,追加到当前模板块文本后面。 l # 列表不能打印字符清单。 n # 读取下一个输入行,用下一个命令处理新而不是用第一个命令。...N # 追加下一个输入行到模板块后面并在二者间嵌入一个新,改变当前行号码。 p # 打印模板块。 P # (大写) 打印模板块第一。 q # 退出Sed。...T label # 错误分支,最后一开始,一旦发生错误或者T,t命令,将导致分支到带有标号命令处,或者到脚本末尾。 w file # 写追加模板块到file末尾。...: sed -n '/test/,/check/p' file 打印第5开始到第一个包含以test开始之间所有sed -n '5,/^test/p' file 对于模板test和west...转变为大写,注意,正则表达式元字符不能使用这个命令: sed '1,10y/abcde/ABCDE/' file 退出:q命令 打印完第10后,退出sed sed '10q' file 保持和获取:

    3.2K20

    Shell 脚本 10 个有用“面试问题和解答”

    解答:我们需要使用‘exit’命令来实现以上描述情境。‘exit’命令被强制输出非0值时,脚本会报错退出。在Unix环境下shell脚本中,0值表示成功执行。...如何使用Linux命令来移除文件头? 解答:当我们需要删除文件中指定行时,‘sed’命令可以用来解决该问题。 这个是用来删除文件头(文件正确命令。...# sed '1 d' file.txt 上面命令问题是,它会在标准输出设备上输出不带首文件内容。为了保存输出到文件,我们需要使用重定向操作符,它将帮助你将输出重定向到文件。...先按[esc]键,然后按‘:’进入到vi编辑器命令模式。 最后,‘vi’编辑器命令界面输入set list命令执行。...而‘cmp’命令则将两个文件逐字节对比,并报告第一个不匹配项。 9. 可以用‘echo’命令来替换‘ls’命令吗? 解答:可以。‘ls’命令可以用‘echo’命令来替代。

    1.2K10

    Linux如何通过命令查看日志文件某几行(中间几行或最后几行)「建议收藏」

    linux 如何显示一个文件某几行(中间几行) 【一】第3000开始,显示1000。...G 把暂存缓冲区内容追加到模式空间里,追加在原有内容后面 l 列出非打印字符 p 打印行 n 读入下一输入行,并从下一条命令而不是第一条命令开始对其处理 q 结束或退出sed...最多可以定义9个标签,左边开始编号,最左边第一个。此例中,对第1到第20进行处理,you被保存为标签1,如果发现youself,则替换为your。...sed -n ‘1,20s/My$/You/gp’ datafile #取消默认输出,处理1到20匹配以My结尾,把行内所有的My替换为You,打印到屏幕上。...6.9 c\ 命令 sed使用该命令将已有文本修改成新文本。 6.10 n命令 sed使用该命令获取输入文件下一,并将其读入到模式缓冲区中,任何sed命令都将应用到匹配紧接着下一上。

    9.7K60

    Linux三剑客命令之Sed

    命令名称 Sed 一个强大流式文本编辑器 详细说明 sed是一种流编辑器,也是文本处理中非常好工具,配合正则使用更强大处理时,把当前处理存储在临时缓冲区中,称为“模式空间”,接着用sed命令处理缓冲区内容...#获得内存缓冲区内容,替代当前模板块中文本 G #获得内存缓冲区内容,追加到当前模板块文本后面 l #列表不能打印字符清单 n #读取下一个输入行,用下一个命令处理新而不是用第一个命令...N #追加下一个输入行到模板块后面并在二者间嵌入一个新,改变当前行号码 p #打印匹配 P #(大写)打印模板第一 q #退出Sed b #lable 分支到脚本中带有标记地方...label 错误分支,最后一开始,一旦发生错误或者T,t命令,将导致分支到带有标号命令处,或者到脚本末尾 w #file 写追加模板块到file末尾 W #file 写追加模板块第一到...~]#sed '1q' test2 #打印第一内容后退出 9、打印奇数或公偶数 [root@centos001 ~]#sed -n 'p;n' test2 08 [root@centos001

    1.5K30

    Sed三剑客入门与进阶

    p 显示打印模板块。 P(大写) 打印模板块第一。 q 退出Sed。 b lable 分支到脚本中带有标记地方,如果分支不存在则分支到脚本末尾。 r file file中读。...T label 错误分支,最后一开始,一旦发生错误或者T,t命令,将导致分支到带有标号命令处,或者到脚本末尾。 w file 写追加模板块到file末尾。...W file 写追加模板块第一到file末尾。 ! 表示后面的命令对所有没有被选定发生作用。 = 打印当前行号码。 # 把注释扩展到下一个换行符以前。.../p' file #打印第5开始到第一个包含以test开始之间所有sed -n '5,/^test/p' file #对于模板test和west之间,每行末尾用字符串aaa bbb...# N; # s/\n//g; #注释:成功,返回state为1;否则返回state=0。此state用于跳转判断。 # }else { # last; #注释:即退出循环语句。

    3.1K10

    每天一个 Linux 命令(3):sed

    d #删除,删除选择 D #删除模板块第一 s #替换指定字符 h #拷贝模板块内容到内存中缓冲区 H #追加模板块内容到内存中缓冲区 g #获得内存缓冲区内容,替代当前模板块中文本...G #获得内存缓冲区内容,追加到当前模板块文本后面 l #列表不能打印字符清单 n #读取下一个输入行,用下一个命令处理新而不是用第一个命令 N #追加下一个输入行到模板块后面并在二者间嵌入一个新...,改变当前行号码 p #打印匹配 P #(大写)打印模板第一 q #退出Sed b #lable 分支到脚本中带有标记地方,如果分支不存在则分支到脚本末尾 r #file file中读...,或者到脚本末尾 w #file 写追加模板块到file末尾** W #file 写追加模板块第一到file末尾** !...4所有的数字8替换成9 [root@centos001 ~]#**sed '1q' test2** 2017-08-08 #打印第一内容后退出 9、打印奇数或公偶数 [root@centos001

    1.1K30

    第五章 正则表达式&字符处理

    d 模式空间中制删除指定 D 删除模式空间中第一 i\ 在当前行上面插入文本 h 拷贝模式空间到内存缓冲区 H 追加模式空间内容到内存缓冲区 g 获得内存缓冲区内容,替代当前模式空间中文本...,改变当前行号码 p 打印模式空间 P 打印模式空间第一 q 退出sed r file file中读取 t label if分支,最后一开始开始,一旦满足要求,将直接到带有标号命令出...,或者到脚本末尾 T label 错误分支,最后一开始开始,一旦满足要求,将直接到带有标号命令出,或者到脚本末尾 命令 功能 w file 写追加到模块空间file末尾 W file 写追加到模块空间第一到...引导sed脚本文件名 --file=script-file 同上 Sed匹配符号 元字符 功能 例子 匹配 ^ 指定开始 /^linux/ 所有以linux开头 $ 指定末尾 /linux...[Ll]inux 匹配包含Linux或linux [^] 匹配一个不再指定范围内字符 /[^a-egz]tp/ 匹配不再指定a-e及g-z区域内开头紧跟tp字段 元字符 功能 例子 匹配

    2.1K20

    【Linux】《how linux work》第十一章 Shell 脚本简介

    需要注意一点是,一些程序(如diff和grep)使用非零退出代码来指示正常情况。 例如,如果grep找到与模式匹配内容,则返回0,如果没有找到,则返回1。...对于&&结构,如果第一个命令失败,shell使用退出代码作为if语句条件,但如果第一个命令成功,shell使用第二个命令退出代码作为条件。...对于||结构,如果第一个命令成功,shell使用第一个命令退出代码,如果第一个命令失败,则使用第二个命令退出代码。 例如: #!...在这两种情况下,basename返回结果都是example。第一个命令example.html中去掉了.html后缀,第二个命令则删除了完整路径中目录。...虽然sed是一个庞大程序,深入分析超出了本书范围,但很容易看出它工作原理。 一般来说,sed将地址和操作作为一个参数。地址是一组,命令决定如何处理这些

    13910

    shell学习教程(超详细完整)

    ] #判断file变量是否为空 then echo "Error, please input a filename" #如果为空,执行程序1,也就是输出报错信息 exit 1 #退出程序,返回值为Ⅰ(...#如1果不存在,则执行程序2 exit 2 #退出程序,把定义返回值为2 elif [ -f "$file” ] #判断file值是否为普通文件 then echo "$file is a...a.b,但不能匹配ajb,.被转义为特殊意义 ^ 匹配首,awk中,^则是匹配字符串开始 ^tux匹配以tux开头 $ 匹配行尾,awk中,$则是匹配字符串结尾 tux$匹配以tux结尾...-h | awk '/sda[O-9]/ { printf $1 "\t" $5 "\n"}’ #查询包含有sda数字打印第一字段和第五字段 1.2.5 awk 内置变量 awk内置变量...再来看看如何实现行数据替换,假设AAA成绩太好了,我实在是不想看到他成绩刺激我,那就可以使用”c”动作: [root@localhost ~]$ cat student.txt | sed '2c

    6.1K20

    实例详解sed命令行

    sed 一次文件中读一,并且将这一放到sed工作车间(pattern space),在工作车间处理完毕后,将结果输出到标准输出,其间并不会动原文件内容 语法如下: sed [options]...,因此要加上-n参数,就能屏蔽到未匹配行数 输出前三数据 $ sed '1,3p' 清平调.txt # 结果是匹配前三数据会输出两遍,未匹配会输出一遍 $ sed -n '1,3p' 清平调...$ nl 清平调.txt | sed -n '/其一/,/其二/p' # 指定内容,匹配其一至其二 1 其一 2 云想衣裳花想容,春风拂槛露华浓 3 若非群玉山头见...替换 $ sed 's/其/第/gi' 清平调.txt # g表示全局替换,如果没有g,只替换每行匹配第一个内容,i表示忽略大小写 第一 云想衣裳花想容,春风拂槛露华浓 若非群玉山头见,会向瑶台月下逢...5353523523 jpkpwefwe lidwoew 读文件并不改变两个文件内容,只是输出,需要用重定向将结果保存 提前退出 $ nl /etc/passwd | sed '3q' #

    56730

    【数据处理】sed原理及使用举例(快速理解核心)

    如果没有g标记,则只有每行第一匹配test被替换成mytest。 $ sed 's/test/mytest/g' example #s选项和p标志一起使用表示只打印那些发生替换。...$ sed -n '/test/,/check/p' example #打印第五开始到第一个包含以test开始之间所有。...$ sed '/test/,/check/s/$/sed test/' example #如果test被匹配,则移动到匹配下一,替换这一aa,变为bb,打印该行,然后继续。...sed '1,10y/abcde/ABCDE/' example #退出:q命令 #打印完第10后,退出sed sed '10q' example 。.../}' test.txt ax1 ax2 ax3 # 第一匹配到了a sed '0,/a/{s/a/ax/}' test.txt ax1 a2 a3 # 第一匹配到1, 第二匹配到a sed

    3K546

    Linux:sed命令详解

    My/,10d' datafile   #删除包含"My"到第十内容 3.命令与选项 sed 命令告诉 sed 如何处理由地址指定各输入行,如果没有指定地址则处理所有的输入行。...,追加在原有内容后面 l 列出非打印字符 p 打印行 n 读入下一输入行,并从下一条命令而不是第一条命令开始对其处理 q 结束或退出 sed r 文件中读取输入行 !...) 3.2 sed 选项 选项 功              能 -e 进行多项编辑,即对输入行应用多条 sed 命令时使用 -n 取消默认输出 -f 指定 sed 脚本文件名 4.退出状态 sed...最多可以定义 9 个标签,左边开始编号,最左边第一个。此例中,对第 1 到第 20 行进行处理,you 被保存为标签 1,如果发现 youself,则替换为 your。...6.10  n 命令 sed 使用该命令获取输入文件下一,并将其读入到模式缓冲区中,任何 sed 命令都将应用到匹配紧接着下一上。

    7.1K60
    领券