Я пытаюсь заменить предыдущую строку совпадения строк.Sed для замены предыдущей строки
Пример JSON
"test" : {
"aa" : true,
"ac" : "port",
"tr" : "p2",
"ll" : 90,
"mp" : true
}
Если "LL" равен 90, мне нужно изменить предыдущую строку "му": "p1". Я попробовал следующее sed, но он всегда заменяет ту же строку вместо предыдущей строки. Пожалуйста, предложите
sed -e '/"ll" : 90/!b;!N;c"mu" : "p1"'
Если вы показать свой полный объект JSON , кто-то может показать вам, как это сделать с помощью правильный JSON-парсер, такой как jq, вместо чего-то хрупкого, как sed. –
Согласен с @BenjaminW. здесь рекомендуется использовать инструменты JSON, такие как 'jq' для управления текстовыми файлами json. – Inian