听说 sed 只能按行来提,这样的话第一个要提取的内容老是提不出来。第二个因为是在 src 里面而且通配另一个字串,原谅我正则表达 式真的看不懂。
请大佬们解惑。
都不用.用 awk
好像也不对,话说回来正常情况下不应该用正则,应该解析 xml
那如果 html 格式不规范的话 解析岂不是会失败?
sed -A1 是加上匹配条目的后一行,sed -B1 是加上前一行,行数可以换,应该能满足你第一条要求。。。
打错了是 grep 不是 sed
专注于 linux 系统运维、运维架构、各类高可用技术,热衷于分享开源技术,热爱开源、拥抱开源!!我是 80 后民工哥,微信公众号:民工哥 linux 运维,我为自己代言,谁说 80 后不能活出精彩人生!!! 关于 命令三剑客的文章可以参考下面的链接 https://mp.weixin.qq.com/s?__biz=MzI0MDQ4MTM5NQ==&mid=2247484807&idx=1&sn=9fd2359b67d45aa9ea3f23231a19dc1c&chksm=e91b609bde6ce98d000b7e377867c6d45a56eb85343dfd345c8a38f7180f850f0956ff972add#rd
为啥不直接 beautifulsoup 呢。。。
sed -n '/playvideo-videoname/,+2{/1/n;p}' test.log
sed 功能稍微强大一点。
awk 正则
pyquery bs4 啊!!
https://github.com/ericchiang/pup “ pup is a command line tool for processing HTML. It reads from stdin, prints to stdout, and allows the user to filter parts of the page using CSS selectors. Inspired by jq, pup aims to be a fast and flexible way of exploring HTML from the terminal. ” 另外一个思路
bs4 吧。或者 sed 提取出.mp4 那一行,然后再用 awk 处理
v2er 写的工具 https://github.com/shinima/temme 这个也挺不错
HTML 不是正则语言吧…
两条命令 sed -n -E '/playvideo-videoname/{n;s/^\s*(.*?)\s*$/\1/p}' awk -F '"' '/advideos.com/{print $2}'