2013-04-25 48 views
3

我想以普遍的方式在unix shell腳本中的td標籤之間獲取數據。如何在unix shell腳本中的td標籤之間獲取數據

例如在下面的

<td style="padding:3px;" align="center">123.456</td> 

如何在廣義含方式檢索123.456。

感謝

+0

爲了幫助你,你可以發表到目前爲止嘗試過什麼? – 2013-04-25 10:45:32

+0

你在使用什麼系統?你可以開始/安裝XML Shell('xmlsh')嗎? – likeitlikeit 2013-04-25 11:04:25

回答

2

你可以用SED嘗試,

sat:~# cat file 
<td style="padding:3px;" align="center">123.456</td> 
<td>sat</td> 
sat:~# 
sat:~# sed 's/<td\(.*[^<>]\+\?>\)\(.*\)<\/td>/\2/g' file 
123.456 
sat 
sat:~# 

我希望這會幫助你。

+0

感謝它的工作:) – sasuke 2013-04-25 13:23:22

0
sed 's/^.*<td.*>\(.*\)<.*$/\1/' file 
0

,爲妥善解決,並以通用的方式使用合適解析器像html-xml-utils

的非合理,非gerneralized方式,用sed

sed 's/^.*>\([0-9.]*\)<.*$/\1/' 
1

如果由於某種原因你不能使用xml解析器,

grep是天生提取的東西。 :)

grep -Po '(?<=>)[^<]*'