鉴于我在表单中有一些 HTML:
<html>
<body>
<div id="1" class="c">some other html stuff</div>
</body>
</html>
如何使用 Unix 脚本提取它?
some other html stuff
您可以检查html-xml-utils和hxselect
允许您提取与 CSS 选择器匹配的元素的命令:
hxselect '.c' < test.htm
这假定您的输入是格式良好的 XML 文档。如果不是,您可能需要求助于正则表达式及其可能的后果。
对于简单的使用,可以使用 Ex 编辑器,例如:
$ ex +'/<div/norm vity' +'%d|pu 0|%p' -scq! file.html
some other html stuff
它在哪里找到div
标记,然后选择找到的标记的内部 HTML 标记 ( vit
),拉出它 ( y
) 以便用它替换缓冲区 ( %delete
, put 0
),然后打印它 ( %print
),然后退出 ( -cq!
)。
其他带有演示 URL 的示例:
$ ex +'/<div/norm vity' +'%d|pu 0|%p' -Nscq! http://example.com/
优点是它ex
是大多数 Linux/Unix 发行版中可用的标准 Unix 编辑器。
也可以看看: