Я использую скрипт bash для добавления файла javascript в каталог, но после этого мне нужно вставить в index.html эту строку между строками 30 и 31.

<script type="text/javascript\" src="./js/jquery.browser.js\"></script>

Я использовал следующую команду, но она не работает (она выводит на меня содержимое файла index.html, как это делает cat):

sed '30i\ <script type=\"text/javascript\" src=\"./js/jquery.browser.js\"></script> ' /path/to/index.html

я должен использовать Perl? может быть, сед прямо? если так как? Спасибо за чтение.

1 ответ1

2

Вам нужно добавить опцию -i , чтобы он обновлял файл, а не записывал в стандартный выход.

Также 30i вставляет перед строкой 30, поэтому вам нужно 31i . Также вы вставили один пробел, я предполагаю, что это ошибка.

Итак, вам нужно:

sed -i '31i\<script type=\"text/javascript\" src=\"./js/jquery.browser.js\"></script> ' /path/to/index.html

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .