У меня есть поток обновлений json для продуктов, и я пытаюсь отсортировать последние версии X по версии (в настоящее время они отсортированы по дате выпуска).
Похоже, что jq не может сортировать поток объектов напрямую, sort_by
работает только с массивами, и я не смог найти способ собрать поток в массив, который не связан с передачей * От 1004 * до jq -s
.
Мое текущее решение:
< xx \
jq -c '.[] | select(.platform | contains("Unix"))' \
| jq -cs 'sort_by(.version) | reverse | .[]' \
| head -5 \
| jq -C . \
| less
Я ожидал, что смогу использовать
jq '.[] | select(...) | sort_by(.version) | limit(5) | reverse'
но я не смог найти вещь, которая limit
s и sort_by
не работает на не массивах.
Я тестирую это на json atlassian для релизов: https://my.atlassian.com/download/feeds/archived/bamboo.json