Я использую скрипт 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? может быть, напрямую sed? если да, то как? спасибо за чтение.
решение1
Вам нужно добавить опцию -i
, чтобы она обновляла файл, а не записывала в стандартный вывод.
Также 30i
вставляется перед строкой 30, поэтому вам нужно 31i
. Также вы вставили один пробел, я предполагаю, что это ошибка.
Итак, вам нужно:
sed -i '31i\<script type=\"text/javascript\" src=\"./js/jquery.browser.js\"></script> ' /path/to/index.html