标签: json jq
我得到包含一个字节的JSON对象,我正在转换为TB。一般来说,我喜欢这样做的方法是将1024除以4的幂。
我正在使用jq '.value|tonumber|(./(1024*1024*1024*1024))',但我更愿意将1024*1024*1024*1024替换为1024**4或1024^4之类的内容,无论如何要在{{1}中执行此操作}}?我还有另一种方法吗?
jq '.value|tonumber|(./(1024*1024*1024*1024))'
1024*1024*1024*1024
1024**4
1024^4
数据很简单,如下所示:
jq
答案 0 :(得分:3)
不幸的是,数字上只有基本的数学运算。但是,您应该可以访问平台上提供的C Math功能。所以cstdlib中的很多内容应该是合理的游戏,例如pow()函数。
(.value | tonumber) / pow(1024; 4)
否则,我不知道任何其他方法,除了将其作为论据传递。
$ jq --argjson div "$((1024**4))" '(.value | tonumber) / $div' input.json