foo
I love
Stack Exchange
bar
Some junk
lines
foo
Welcome to the
world of
Bash
bar
foo
Elon Musk
rocks
是的,文件末尾没有bar
补码foo
所需的输出是
I love Stack Exchange
Welcome to the world of Bash
Elon Musk rocks
因此,删除所有换行符,介于^foo
和^bar
之间^foo
以及end of file
没有的地方bar
Perl 来拯救!
-n
逐行读取输入..
是范围运算符,它返回块中每一行的相对行号。最后一行已E0
附加到它。与
awk
:要匹配
foo
第一个单词为 with 的行,请替换$0 == "foo"
为$1 == "foo"
; 匹配以 开头的行foo
,替换为/^foo/
( 的缩写$0 ~ /^foo/
)。你也可以这样做:
a) 这是
POSIX-sed
兼容代码,其中我们将中档线(!/foo/ 和 !/bar/)存储在保留区域中。b)
Perl
如图所示解释:
/foo/
并以 结束/bar/
,两者都出现在不同的行上。@A
。存储后,返回读取下一条非eof提供的记录。/bar/
oreof
,我们采取打印内容@A
并将其清空的操作,为下一个收集周期做准备。