jq: как печатать одну строку для каждого значения подобъекта, повторяя значение верхнего уровня со значением подобъекта

Рабочая станция Linux

Как ни странно, многие версии GDM не предлагают способ передачи аргументов вроде +iglxв Xorg. В ответ новые версии X.org имеют параметрIndirectGLX(см. также пример xorg.confтекст).

При отсутствии этой опции существует обходной путь: обернуть Xorgсам сценарий оболочки:

mv /usr/bin/Xorg /usr/bin/Xorg.original
echo -e '#!/usr/bin/env bash\nexec /usr/bin/Xorg.original "$@" +iglx' > /usr/bin/Xorg
chmod +x /usr/bin/Xorg
chcon --type=bin_t /usr/bin/Xorg

Рабочая станция macOS (XQuartz)

Просто беги

defaults write org.macosforge.xquartz.X11 enable_iglx -bool true

и перезапустите XQuartz, если он запущен. (Остерегайтесь опечаток :нет проверки ошибок в именах доменов и переменных.)

1
26.12.2019, 02:24
1 ответ
$ jq -c '.[] |.lv1id as $id |.requests[] | [$id,.startDate,.name,.requestState]' file.json
["id1","2019-02-05 08:52:33.663+0000","lvl2requestA","Succeeded"]
["id1","2019-02-05 08:52:33.421+0000","lvl2requestB","Succeeded"]
["id12","2019-02-05 08:52:19.823+0000","lvl2requestD","Succeeded"]
["id12","2019-02-05 08:52:19.689+0000","lvl2requestA","Succeeded"]

Это берет каждый из элементов верхнего -самого большого массива(.[])и присваивает элементу .lv1idзначение $id. Затем он выполняет итерацию по массиву .requests[]этого элемента и строит выходной массив для каждого из его элементов , состоящий из различных битов, которые вам кажутся необходимыми, включая $id, которые вы помните ранее.

6
27.01.2020, 23:40

Теги

Похожие вопросы