Bash
從 bash 腳本的命令輸出中獲取兩個值
我有一個 bashscript,它執行一個命令併計算一對值,其輸出可能如下所示。
a,b (10.0000000000, 10.0000000000) -> volt (2088133.7088034691, -222653.3238934391)
並且在無效參數或錯誤的情況下,程序可以顯示不同的錯誤消息。
有沒有一種安全的方法來解析兩個伏特值並將它們儲存在 bash 腳本中的兩個變數中?
取決於輸出的可靠性以及當您收到“不同的錯誤消息”時會發生什麼,即必須如何處理。
一種基本方法,根據您上面的內容,您可以使用
awk
:awk -F"[)(, ]" '{printf "var1=%s\nvar2=%s\n", $11,$13}' var1=2088133.7088034691 var2=-222653.3238934391
“安全方式”將取決於這些錯誤消息對輸出的作用……
更穩健的方法是使用
awk
’s 的內置NF
變數來計算相關欄位:awk -F"[)(, ]" '{printf "var1=%s\nvar2=%s\n", $(NF-3),$(NF-1)}'