本文介绍了如何使用ed在最后一个模式匹配之后添加文本的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
这是我在 first 模式之前添加文本的方式,我想在 last 模式之后添加
This is how I am adding text before first pattern,I want to add after last pattern
FILE_NAME="folder/myfile.c++"
STR_TO_ADD="string that i want to add"
PATTERN="banana"
ed $FILE_NAME 2>NULL 1>NULL<<EOF
/^$PATTERN
-1
a
$STR_TO_ADD
.
wq
EOF
文件
banana
apple
banana
one
two
three
预期产量
banana
apple
banana
string that i want to add
one
two
three
推荐答案
转到文件的最后一行,并向后搜索模式.
Go to last line of file and search pattern in backward direction.
FILE_NAME="folder/myfile.c++"
STR_TO_ADD="string that i want to add"
PATTERN="banana"
ed $FILE_NAME 2>NULL 1>NULL<<EOF
$
?^$PATTERN
a
$STR_TO_ADD
.
wq
EOF
$
文件的最后一行.?^$PATTERN
从当前行向后搜索模式.
$
last line of file.?^$PATTERN
search pattern in backward direction from current line.
这篇关于如何使用ed在最后一个模式匹配之后添加文本的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!