我有一个文件名foo。该文件包含一些文本(如下所示)。你能告诉我怎样才能得到“我没有创建主页”的字样。变成一个变量。我正在使用命令variable='cat foo | cut -d ">" -f 3'
。它输出“我还没有创建主页。”有很多新的线条。如果您能告诉我一种获取字符串的方法,请告诉我没有任何换行符。非常感谢。
<HTML>
<HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html>
<META HTTP-EQUIV="resource-type" CONTENT="document">
</HEAD>
<BODY>
I have not created a home page.
</BODY>
</HTML>
答案 0 :(得分:2)
cut是错误的工具。使用awk:
cat >> _.awk << "EOF"
/<BODY>/ { found=1; next }
/<\/BODY>/ && found==1 { exit 0 }
found==1 { if ($1) print $0 }
EOF
awk -f _.awk foo
理想情况下,您应该使用真正的XML解析器,如DOM解析器
答案 1 :(得分:1)
cat foo | grep "^[^<]"
。要分配变量:
v=`cat foo | grep "^[^<]"`
答案 2 :(得分:1)
{ xmlstarlet sel -N html='http://www.w3.org/1999/xhtml' -t -m //html:body -v . <(tidy -asxml input.html) | tr -d '\n' ; } 2> /dev/null