У меня есть файл HTML в этом, у меня есть строка комментария как:
<!-- tag1 --><!-- tag11 -->
Я должен вставить a JQ
элемент файла, промежуточный их.
Я попробовал, и я смог вставить маленькую строку, но моя строка является большой в размере. Кто-либо может предложить меня идея?
i=0
code="(jq -r '.["$i"].code' file.json)";
eval v=\$$code;
sed -i 's/(<!-- tag1 -->)\(<!-- tag11 -->)/\1'$v'\2/' index.html;
Это бросило меня ошибка как:
sed: -e expression #1, char 47: unterminated `s' command
Однако:
v="xxxxxxx"
sed -i 's/(<!-- tag1 -->)\(<!-- tag11 -->)/\1'$v'\2/' index.html;
Строка вставляется отлично, кто-либо может помочь?
Согласно ramruma, Вы могли попытаться поместить длинную строку в файл и затем использовать вставку содержания файла, следующим образом:
sed -i "/teststring/r file1.txt" index.html
Из sed руководства r
флаг используется для чтения содержания файла.