命令打印所有行直到第一次匹配

时间:2014-11-05 00:26:54

标签: bash awk sed

我试图在第一场比赛之前打印文件中的所有线条。我在文件中再次使用相同的条目,但我不需要那些行。试着 awk“{print} / $ {pattern} / {exit}”和sed“/ $ pattern / q”(我的serach基于变量)。但是这两个命令都在最后一次匹配之前打印所有行 例如:我的档案就像 ABC BCD 高清 XYZ 高清 LMNO 高清 XVD

当我的模式是'def'时,我只需要abc和bcd。但上面的命令是打印,最后一次'def'之前的所有行。你能提供一些想法吗

1 个答案:

答案 0 :(得分:0)

这应该有效:

awk '!'"/${pattern}/{print} /${pattern}/ {exit}"  input_file.txt