Я пытаюсь заменить содержимое некоторых HTML-тегов на HTML-странице, используя sed в сценарии bash. По какой-то причине я не получаю должного результата, так как ничего не заменяет. Это должно быть что-то очень простое / глупое, которое я не замечаю, кто-нибудь хочет мне помочь?
HTML для поиска / замены:
Unlocked <span id="unlockedCount"></span>/<span id="totalCount"></span> achievements for <span id="totalPoints"></span> points.
Используемая команда sed:
cat index.html | sed -i -e "s/\<span id\=\"unlockedCount\"\>([0-9]\{0,\})\<\/span\>/${unlockedCount}/g" index.html
Смысл этого в том, чтобы проанализировать HTML-страницу и обновить цифры по некоторым внешним данным. При первом запуске содержимое тегов будет пустым, после этого они будут заполнены.
РЕДАКТИРОВАТЬ:
В итоге я использовал комбинацию ответов, результатом которой стал следующий код:
sed -i -e 's|<span id="unlockedCount">\([0-9]\{0,\}\)</span>|<span id="unlockedCount">'"${unlockedCount}"'</span>|g' index.html
Большое спасибо @Sorpigal, @tripleee, @classic за помощь!