Kucher2 Опубликовано: 26 червня, 2010 Опубликовано: 26 червня, 2010 Привет народ! Имеем FreeBSD 8 и скрипт в шелл tch. Задача: вставить в файл определённую строку после строки, содержащей определённый текст. Целый день бьюсь. Пробовал так: > cat file1 | sed -e "/456/s/$/0000/" file2 результат: > cat file2 123 4560000 789 Так: > cat file1 | sed -e "/456/s/$/\n0000/" file2 результат: > cat file2 123 456n0000 789 И так не работает: > cat file1 | sed "/456/a \0000" file2 Даже синтаксис вроде: sed "2a 0000" не работает вовсе. А так работает: cat file1 | sed "2a\\ 0000" > file2 ...только результат снова: > file2 123 4560000 789 Просьба показать на примере с sed, кто реально пробовал, как это работает. Всё! Меня осенило! Вот так надо: cat file1 | sed "/123/a\\ вставляемая_строка " > file2 результат: > file2 123 вставляемая_строка 456 789 Спасибо за участие.
gelmas_x Опубліковано: 27 червня, 2010 Опубліковано: 27 червня, 2010 зато человек отписался как нашел - кому то пригодится (парится не будет).
Neelix Опубліковано: 27 червня, 2010 Опубліковано: 27 червня, 2010 мало кто отписывается как решил ту или иную траблу
Рекомендованные сообщения
Создайте аккаунт или войдите в него для комментирования
Вы должны быть пользователем, чтобы оставить комментарий
Создать аккаунт
Зарегистрируйтесь для получения аккаунта. Это просто!
Зарегистрировать аккаунтВхід
Уже зарегистрированы? Войдите здесь.
Войти сейчас