Задать вопрос
@historydev
Редактирую файлы с непонятными расширениями

Как вставить текст только перед первым совпадением?

sed "/^.*#location/n;/.*location/i 0000" myfile

Найти location который не начинается с комментария и при первом совпадении вставить 0000 перед ним.

Что я сделал не так?
  • Вопрос задан
  • 33 просмотра
Подписаться 1 Простой Комментировать
Решения вопроса 1
#!/bin/bash
line=`grep -n '^ *location' myfile | sed -rn '1s/(.+):.+/\1/p'` # номер первой строки с location
sed -ri "$line s/.+/0000\n&/" myfile
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы