如何连接两个文件 foo1 和 foo2,同时从终端在 foo1 之后和 foo2 之前插入一些文本?

如何连接两个文件 foo1 和 foo2,同时从终端在 foo1 之后和 foo2 之前插入一些文本?

我想做类似的事情

cat foo1 foo2 | How can I enter sometext from terminal | > foo3

其中包含其后foo3的内容foo1sometext,随后是 的内容foo2

到目前为止我最好的尝试是

cat foo1 - foo2 > foo3

但我没有看到foo2in的数据foo3

答案1

你的命令很好:

cat foo1 - foo2 > foo3

但您不应该使用Ctrl+C来终止终端的输入。这会中断整个命令。使用Ctrl+ D

答案2

您可以使用echo和来实现此目的cat。以下应该适合你

echo 'Some text in between' | cat foo1 - foo2 > foo3

答案3

@Chetna C 可能有您正在寻找的答案。但这是另一个在 bash 中工作的:

user@hostname ~/test
bash$ echo charlie > foo1

user@hostname ~/test
bash$ echo dennis > foo2

user@hostname ~/test
bash$ cat foo1 <(echo "mac") foo2 > foo3

user@hostname ~/test
bash$ cat foo3
charlie
mac
dennis

相关内容