我有一个工作流程,会生成超过 10 MB 的 HTML 文件。我想将这些 10 MB 文件拆分成更小的文件……更多在 1 MB 范围内。
HTML 文件包含内部链接和锚点。因此,无论我使用什么实用程序,都需要适当地修改<a href="../foo>foo</a>
和<a id="fooID"></a>
以使用较小文件的名称。
我想做的是使用一些实用程序在预定的位置(可能是每个点)破坏文件。
有谁知道是否存在可以自动执行此操作的命令行实用程序或脚本?
更新:我最终创建了自己的 bash 脚本来执行此操作。很遗憾我不能分享代码,但我可以解释一下:
- 创建子目录来放置拆分后的 html 文件
- 分割文件(我使用了 xslt 2.0)
- 我把原件放在
<head>
所有文件中 - 我使用 xpath 在特定的块级标签上拆分文件
- 我把原件放在
- 通过新文件的目录进行递归(xslt 2.0)创建一个包含两个字段的临时 XML 文件:
- 文件名
- 找到 @id
- 再次通过新 html 文件的目录进行递归(xslt 2.0)。将每个 @href 与 @id/filename 对的 XML 文件进行比较,如果需要,将 href 更正为新文件名
到目前为止,它还是有效的。不过,它不是这个问题的答案,因为它不是一款专为所有人设计的实用程序。