1
後,我有一個這樣的字符串:只打印的內容有一定的模式匹配
query:schema:query_result{cell=ab}: <timestamp>
我想只打印AB,並將其分配給一個變量。我怎樣才能用grep/sed來做到這一點?
後,我有一個這樣的字符串:只打印的內容有一定的模式匹配
query:schema:query_result{cell=ab}: <timestamp>
我想只打印AB,並將其分配給一個變量。我怎樣才能用grep/sed來做到這一點?
你可以試試他,
$ var=$(grep -oP '=\K\w+' <<< "$str")
或
$ sed 's/.*=\(\w\+\).*/\1/' <<<"$var"
ab
您還可以使用AWK:
s='query:schema:query_result{cell=ab}: <timestamp>'
awk -F '[=}]' '{print $2}' <<< "$s"
ab
將其分配給一個變量:
var="$(awk -F '[=}]' '{print $2}' <<< "$s")"
這對於這個例子來說非常合適,謝謝。 – Narabhut
如果{}內有更多內容,例如{country = us,city = chicago,cell = ab},我將如何修改它 – Narabhut
我的第一個示例適用於這種情況。 –