我试图提取进行唯一字符串的随机值,布局是
<tr><td><a>uniquestring"</a></td>
<td>RANDOM NUMBER k/b</td>
<td>RANDOM NUMBER</td>
<td>RANDOM NUMBER</td>
<td>RANDOM NUMBER</tr>
我想做点什么
curl -is http://webpage.com/ |grep uniquestring | echo RANDOM NUMBER k/b
我还希望在一行中返回所有值,即echo
uniquestring RANDOMNUMBER k/b RANDOMNUMBER RANDOMNUMBER RANDOMNUMBER
该页面会生成多个&#39;&#39;以上5行,我只对获取特定单字符串之后的值感兴趣。
答案 0 :(得分:1)
返回单行
上的所有值curl -s webpage.com | grep -A 5 uniquestring | sed 's/<[^>]\+>//g' | tr '\n' ' '
只返回RANDOM NUMBER k / b
curl -s webpage.com | grep -A 1 uniquestring | grep -v "uniquestring" | sed 's/<[^>]\+>//g' | tr '\n' ' '
答案 1 :(得分:0)
使用TXR:
$ txr -c '@(skip)
<tr><td><a>@uniq"</a></td>
<td>@num1 k/b</td>
<td>@num2</td>
<td>@num3</td>
<td>@num4</tr>
@(output)
@uniq @num1 k/b @num2 @num3 @num4
@(end)' - < data
eb09b744e3e914d67f86a1fee82e9002634ac 123098340 k/b 4949848 9648 334938
这里我们尽可能多地匹配结构,包括静态文本k/b
。假设唯一字符串是可变的;我们不知道它是什么,想要提取它。
示例data
文件包含:
$ cat data
<tr><td><a>eb09b744e3e914d67f86a1fee82e9002634ac"</a></td>
<td>123098340 k/b</td>
<td>4949848</td>
<td>9648</td>
<td>334938</tr>