我想在bash脚本中使用sed来仅获取隐藏值
sed -n 's/.*<INPUT NAME="res_encab" TYPE=HIDDEN VALUE="\(.*\)>.*/\1/ip;T;q'
但我无法正确逃脱模式
在我的脚本中我有这个
echo $var | sed -n "s/.*<INPUT NAME=\"res_encab\" TYPE=HIDDEN VALUE=\"\(.*\)>.*/\1/ip;T;q"
但是当我运行脚本时,我得到了
bla bla bla bla"> <INPUT NAME="Res_numero" TYPE=hidden VALUE="bla blaa...
insted of
bla bla bla bla
任何消化?
欢呼声
答案 0 :(得分:2)
您的模式可能过于严格或仅仅是错误的。从一些简单的工作开始,但可能不够严格,如下:
var='<INPUT NAME="Res_numero" TYPE=hidden VALUE="bla as"asdsad>'
echo "$var" | sed -ne 's/.*VALUE="\([^"]*\)".*/\1/p'
获得一个简单的概念验证工作,然后根据需要逐步使其变得越来越严格,如果你的表达仍然有效,则在每一步都进行测试。