我从JSON
命令收到此类curl
回复:
[
{
"cid": 49,
"pyn": "yi4",
"hans": "亿",
"hant": "億",
"tid": 68,
"l10n": "cent million",
"pid": 1,
"pos": "num",
"pos_txt": ""
},
{
"cid": 50,
"pyn": "yi4",
"hans": "亿",
"hant": "億",
"tid": 69,
"l10n": "100 millions",
"pid": 1,
"pos": "num",
"pos_txt": ""
}
]
如何使用2
或命令行(例如Bash
)计算数组中的项目数(此处为underscore
)?
答案 0 :(得分:301)
答案 1 :(得分:37)
最短的表达是
curl 'http://…' | jq length
答案 2 :(得分:3)
一个简单的解决方案是安装jshon
库:
jshon -l < /tmp/test.json
2
答案 3 :(得分:2)
您还可以使用jq来跟踪返回的json中的数组,然后将其通过管道传输到 second class EditProfileForm(FlaskForm):
username = StringField('Username', validators=[DataRequired()])
about_me = TextAreaField('About me', validators=[Length(min=0, max=140)])
submit = SubmitField('Submit')
def __init__(self, original_username, *args, **kwargs):
super(EditProfileForm, self).__init__(*args, **kwargs)
self.original_username = original_username
调用中以获取其长度。假设它位于名为jq
的属性中,例如records
。
{"records":[...]}
答案 4 :(得分:2)
试试qic。它的工作原理类似于 jq/jello。 qic 也支持交互模式。
cat test.json | qic "len(_)"