在linux中使用sed命令执行cat命令

ama*_*mar 7 linux sed cat

我有file.txt一些内容.我想搜索一个字符串file1.txt,如果该字符串匹配,我想用该字符串的内容替换该字符串file.txt.我怎样才能做到这一点?

我尝试过使用sed:

sed -e 's/%d/cat file.txt/g' file1.txt
Run Code Online (Sandbox Code Playgroud)

这是在搜索匹配的字符串file1.txt并用字符串替换它cat file.txt,但我想要的内容file.txt.

Iva*_*hek 5

在将文件插入到 sed 字符串之前,如何将文件的内容保存在变量中?

$content=`猫文件.txt`; sed "s/%d/${content}/g file1.txt"

  • 你也可以这样做: sed "s/%d/$(cat file.txt)/g" file1.txt。 (5认同)
  • 你需要 `content=$(cat file.txt); sed ...`,如果文件中碰巧有任何“/”、“&”或可能有其他几个序列,则这将不起作用。 (2认同)