【发布时间】:2016-11-04 09:46:00
【问题描述】:
如果 B 有换行符,sed 是否能够将文本 B 插入到文本 A 的中间?
我找到了如何使用 sed 将文本插入其他文本中间的示例 - 但我能找到的唯一此类示例是插入的文本是单行的。
如果插入的文本有换行符,我无法确定将文本插入其他文本的语法(甚至是可能性)。有人可以帮忙吗?
我没有嫁给 sed。我可以接受任何解决方案,但我也很好奇这是否可以使用 sed 完成。
这是我迄今为止尝试过的:
>c1="$(cat f1)"
>echo "$c1"
a
b
c
d
>c2="$(cat f2)"
>echo "$c2"
x
y
z
>echo "$c1" | sed "s,^c,c\n"${c2}","
sed: -e expression #1, char 9: unterminated `s' command
>echo "$c1" | sed "s,^c,c\n${c2},"
sed: -e expression #1, char 9: unterminated `s' command
谢谢。
【问题讨论】:
-
将
\n更改为^M(通过CTRL-V、CTRL-M 获得)。