使用 jq 按数组中的元素排序

tek*_*ara 2 jq

给定

[3,4]
[5,2]
Run Code Online (Sandbox Code Playgroud)

我想制作:

[5,2]
[3,4]
Run Code Online (Sandbox Code Playgroud)

我尝试了这个但失败了:

echo '[3,4] [5,2]' | jq 'sort_by(.[1])'

jq: error (at <stdin>:1): Cannot index number with number
jq: error (at <stdin>:1): Cannot index number with number
Run Code Online (Sandbox Code Playgroud)

pmf*_*pmf 6

使用-nwithinputs访问流的项目。[\xe2\x80\x8c...]将它们收集到一个外部数组中,sort_by(...)按条件排序,...[]再次分解外部数组,-c并使输出紧凑

\n
jq -nc \'[inputs] | sort_by(.[1])[]\'\n
Run Code Online (Sandbox Code Playgroud)\n
[5,2]\n[3,4]\n
Run Code Online (Sandbox Code Playgroud)\n

演示

\n