我有一個大的HTML頁面,其中包含這一行代碼:
<span id="product542" price-amount="78. 49" class="classname"><span class="price">78,49 €</span></span>
我想在bash中提取值 "78.49"。我正在嘗試用這種方式:
filename='./page.html'
curl link > $filename
number=$(xpath -q -e '//span[@id="product542"][1]/text()'/span> $filename)
echo $number[/span
但這在html檔案上回傳一個語法錯誤。我怎么做呢?有沒有其他方法?
uj5u.com熱心網友回復:
你可以用grep命令來做。grep -Po "(?<=price-amount=") [^"] " page.html
Bash:
filename=' ./page.html'
curl link > $filename
number=$(grep -Po "(?<=price-amount=") [^"] " $filename)
echo $number
uj5u.com熱心網友回復:
使用bash
IFS="="/span> read -ra price < input_file
echo "${price[4]/"}"
使用sed
sed 's/"/g;s/.*amount=([0-9.]*).*/1/' input_file
使用awk
awk -F"[=]" '{gsub(/"/,"); print 5}'/span> input_file
輸出
78.49
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/332512.html
標籤:
