修剪 jq 提取的数字的尾随零

修剪 jq 提取的数字的尾随零

以下命令通过BTC从特定交易所获取价格来实现我的目标。

curl -sS https://api.binance.com/api/v1/ticker/price?symbol=BTCUSDT | jq -r '.price'

输出将是暂时的7222.25000000,但我想得到它7222.25

答案1

通过以下方式传递价格tonumber

curl -sS 'https://api.binance.com/api/v1/ticker/price?symbol=BTCUSDT' |
jq -r '.price | tonumber'

这会将价格从字符串转换为数字,并删除尾随的零。请参阅手册jq

答案2

如果您不介意使用 Bash 内置函数,则 printf 可能是最佳选择:

curl -sS https://api.binance.com/api/v1/ticker/price?symbol=BTCUSDT | jq -r '.price' | xargs printf '%.2f'

这样,您将保留两个尾随数字并完成四舍五入。

答案3

awk 也是一个选项

curl -sS https://api.binance.com/api/v1/ticker/price?symbol=BTCUSDT | jq -r '.price'  | awk '{printf "%.2f\n", $1}'

相关内容