小编Lui*_*rca的帖子

使用 sed 插入长字符串

我正在尝试使用此表达式在给定字符串之后将一个文本文件的内容插入到另一个文本文件中。这是一个简单的 bash 脚本:

    TEXT=`cat file1.txt`
    sed -i "/teststring/a \
    $TEXT" file2.txt
Run Code Online (Sandbox Code Playgroud)

这将返回错误,“sed:-e 表达式 #1,字符 37:未知命令:`M'”

问题在于 file1.txt 的内容实际上是一个私有证书,因此它包含大量文本和异常字符,这似乎导致了问题。如果我用一个简单的 ASCII 值替换 $TEXT ,它可以工作,但是当它读取 file1.txt 的大量内容时,它会因该错误而失败。

有什么方法可以执行此操作吗?我的语法是否与 sed 或我的引用位置错误有关?

unix bash sed

2
推荐指数
1
解决办法
1556
查看次数

标签 统计

bash ×1

sed ×1

unix ×1