Bash
保存管道值出錯了
我安裝了 jq 來用 bash 處理一些 JSON。但是以某種方式將 JSON 字元串傳輸到 jq 並結合將其輸出保存到另一個變數出錯了。
TEST='{"foo": "bar"}' PB_SIG=$TEST | jq '.foo' echo $PB_SIG
它只輸出整個 TEST JSON 字元串。有人嗎?
在第二行試試這個:
PB_SIG=`echo $TEST | jq '.foo'`
我看到的兩個問題是您需要通過管道回顯 $TEST 變數的值,並且您需要擷取管道命令的輸出。
將此與 bash 一起使用:
TEST='{"foo": "bar"}' PB_SIG=$(jq '.foo' <<< "$TEST") echo "$PB_SIG"
輸出:
“酒吧”