Разбор раздела YAML с помощью оболочки

2 ответа
$ awk '/^[^ ]/{ f=/^pkg:/; next } f{ if (sub(/:$/,"")) pkg=$2; else print pkg, $2 }' file
pkg_a_1 Shass
pkg_a_1 AJh55
pkg_a_1 ASH7
pkg_b_1 Kjs6
pkg_b_1 opsaa
2
18.03.2021, 23:06

Вы также можете использоватьyqиjq:

Майка Фараха.
yq -j r infile.yml 'pkg.*' |
jq -r 'to_entries[] |.key as $k |.value | map(. = $k + " " +.) | join("\n")'

Выход:

pkg_a_1 Shass
pkg_a_1 AJh55
pkg_a_1 ASH7
pkg_b_1 Kjs6
pkg_b_1 opsaa
1
18.03.2021, 23:06

Теги

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