У меня есть уменьшенный JS-файл. Содержит специальные символы, такие как трубы, тире, косые черты и т. Д.
Кроме того, у меня есть еще один HTML-файл, который содержит комментарий внутри:
<!--#MY_SNIPPET#-->
Я пытаюсь использовать sed
, чтобы добавить мой js-файл и заменить его комментарием выше.
Пример my.js
<script>whatever|@</script><script>-my</script>
Я сейчас занимаюсь:
VARIABLE=$(cat my.js)
sed -i "s|<!--#MY_SNIPPET#-->|${VARIABLE}|" index.html
Но я получаю sed: unmatched '|'
Я предполагаю, что sed
пытается оценить строку, и поэтому терпит неудачу, но мне интересно, есть ли простой способ сделать это возможным, просто используя sed
, потому что я хотел бы избежать использования Perl
или что-нибудь еще.
Не имеет значения разделитель, он всегда выдает одну и ту же ошибку.