用数字替换jq预定义变量 [英] Replace jq predefined variable with number

查看:59
本文介绍了用数字替换jq预定义变量的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

jq可以具有预定义的变量,并可以替换为--arg选项.它适用于字符串.但是,我不知道如何将变量替换为数字.

jq could have predefined variables and replace with --arg options. It works well with string. However, I don't know how to replace the variable as number.

$jq -n --arg number 3000 '{"number":$number}'
{
  "number": "3000"
}

我希望能够生成如下内容:

I would like to be able to generate something as following :

{
  "number": 3000
}

谢谢.

推荐答案

或:

jq -n --arg number 300 '{"number": $number|tonumber}'

或(如Jeff所指出的)jq 1.5:

or (as Jeff pointed out) with jq 1.5:

jq -n --argjson number 300 '{"number": $number}'

或(具有2015年6月26日之后的jq版本):

or (with versions of jq after June 26, 2015):

jq -n --arg number 300 '{$number} | .number |= tonumber'

这篇关于用数字替换jq预定义变量的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆