puma34
@puma34

Удалить из jq ключи содержащие часть слова?

Есть плоский json как с помощью jq удалить из него все ключи в названии которых есть слово pass

{
"description": "",
"hostname": "ubuntu18",
"ip": "",
"password_1": "test123",
"password_2": "test1231",
"username_1": "test",
"username_1_owner": "dude1",
"username_2": "test1",
"username_2_owner": "dude2"
}
  • Вопрос задан
  • 200 просмотров
Решения вопроса 1
xotkot
@xotkot
хорошо есть и хорошо весьма
$ jq 'with_entries(select(.key|test("password")|not))' config.json
{
  "description": "",
  "hostname": "ubuntu18",
  "ip": "",
  "username_1": "test",
  "username_1_owner": "dude1",
  "username_2": "test1",
  "username_2_owner": "dude2"
}
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
Stalker_RED
@Stalker_RED
Object.keys(obj).forEach(key => {
  if (key.includes('pass')) {
    delete obj[key];
  }
});

А jq тут не нужен.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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