Замена содержимого тега HTML с помощью sed

Я пытаюсь заменить содержимое некоторых 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 за помощь!

8
задан Revell 25 August 2011 в 12:08
поделиться