У меня есть файл с несколькими строками, мне нужно поискать слово.Если оно существует, замените его другим словом, в противном случае оставьте его.
Ввод
Amount:{12},members:{2,state:{'xx'},city:{'yyyy'}`enter code here`
Amount:{12},state:{'xx'},city:{'yyyy'}
Amount:{10},members:{6,state:{'xx'},city:{'yyyy'}
Если в строке есть слово members
, то ,state:
следует заменить на },state:
, если ещеслово members
отсутствует в строке, затем не вносите изменений в строку.
Вывод
Amount:{12},members:{2},state:{'xx'},city:{'yyyy'}
Amount:{12},state:{'xx'},city:{'yyyy'}
Amount:{10},members:{6},state:{'xx'},city:{'yyyy'}`
Я пробовал это sed -i -e '/members/ s/,state/},state/; s/,state/,state'
Спасибо`