【发布时间】:2021-04-24 05:43:15
【问题描述】:
我是 bash 的初学者,一直在尝试解决一个烦人的问题 - 我无法将文本添加到 MS Word (.doc) 文件中。
我设法提取了文本,但没有插入文本。我尝试使用sed 命令,但它破坏了文件 - 我想是因为它将文本添加到文件的“源代码”中(不确定这是否是正确的术语)。我还尝试将文本添加到.html 文件(使用相同的命令),但它仍然不起作用。它仅适用于简单的 .txt 文件。
我尝试过的命令:
$: sed -i 'a/existingTest/newText' MyFile.doc
或
$: sed "/existingText/a newText" MyFile.doc
# I use "existingTest" to identify the location where I want to append my newText.
通过这两个命令,文本被添加到“源代码”中(无论是应用于 .doc 还是 .html 文件),这使得文件不可读。
有人知道将文本添加到 .doc 或 .html 文件的方法吗?最好是初学者会理解的解决方案,但我会欢迎任何东西:D
谢谢!
【问题讨论】:
-
我不认为你可以用这种方式处理 MS Word(一堆 xml 压缩在一起)
-
html 应该适用于 sed,但我不确定这是否是您的语法问题。您可以发布一个您尝试更改的 HTML 示例吗?
-
你确定你正在使用
*.doc格式,这种格式在 20 年前就已经过时了?如果是*.docx,解压docx文件后,找到包含目标文本的文件,通过替换文本进行编辑,然后再次压缩文件。 -
我正在使用 .doc 文件。也许我可以开始使用 .docx,它可能会更容易。关于 .html 文件,它是一个普通的 html 文件。我刚刚在里面插入了一些文本进行测试,并使用了我在帖子中提到的命令。然后新文本被插入到源代码中,而不是作为文件中的普通行。
-
感谢您的反馈。至于 .html 文件,您能否提供一个您测试过的示例,以便我可以重现该问题?最好用 .html 文件的文本更新您的问题,而不是将其写在评论中。 BR。