如何在双括号中提取字符串,如下所示
<html>
<head>
<title>[[title]]</title>
</head>
<body>
Hi! You are in the [[environment]] environment!
</body>
</html>
答案 0 :(得分:0)
解析XML应该使用适当的XML解析工具完成,bash默认情况下不会提供。但由于输入很简单,因此有一些有效的选择。
使用grep:
echo $HTML | grep -oPm1 "(?<=<title>)[^<]+"
使用python(需要'lxml'模块安装):
echo $(echo $HTML | python -c "import sys,lxml.html; tree=lxml.html.fromstring(sys.stdin.read()); r=tree.xpath('//title/text()'); print(r[0])")