У меня есть переменная со значением, указанным ниже,
var1="heritage=external-dns,external-dns/owner=us-east-1:testapp-sandbox,external-dns/resource=ingress/monitoring/prometheus-operator-grafana"
var2=us-east-1:testapp-dev
Я хочу заменить только текст между owner = и , external-dns который равен us-east-1: testapp-sandbox с содержимым из var2.
Итак, я ожидаю вывод, как показано ниже,
var1_updated="heritage=external-dns,external-dns/owner=us-east-1:testapp-dev,external-dns/resource=ingress/monitoring/prometheus-operator-grafana"
Я пробовал это, sed -i 's/(owner=).*(,external-dns)/\1us-east-1:testapp-dev\2/g' value.txt
, но он выдает мне ошибку как недопустимый код команды v
Пожалуйста, дайте мне знать, как это сделать с помощью sed или awk .. .