可以说我有fileA,其内容

Hello, this is some
random text REPLACEHERE and some more
random text

fileB及其内容
stuff that goes into
fileA, at that specific place

如何正确地将REPLACEHERE的内容替换为fileA中的fileB?就在那个地方,就像我在做一个简单的正则表达式操作一样?

我最近的是
sed -i '/REPLACEHERE/r fileB' fileA

在找到REPLACEHERE之后仅将fileB追加到该行中,这是不好的。我需要将它完全替换到位(我认为那是i标志的实际作用)。

最佳答案

仅使用sed可能不会那么容易,我将使用shell变量/命令扩展:

sed -i "s/REPLACEHERE/$(cat fileB)/g" fileA
-i意味着更改将保存到fileA,而不是打印到stdout

顺便注意一下fileB中的斜线。如果有的话,他们将不得不逃脱。

10-04 17:50