Перейти к содержанию

Удаление строки из файла


Рекомендуемые сообщения

Начальные условия: Есть текстовый файл (.forward) в котором располагается список e-mail адресов:

user1@email.ru

user2@email.ru

и т.д.

Задача: Как удалить заданую строчку userX@email.ru при помощи короткой консольной команды?

PS: Использовал: "sed -e /s/userX@email.ru//g .forward" - выводит на экран то что нужно, но файл при этом не изменяется. Если в конце добавить "> .forward" то файл станет по объему станет равен 0 байтам Sad

Если ">> .forward" то соответственно к имеющейся инфе допишется то что необходимо. Может есть другие элегантные решения?

Ссылка на комментарий
Поделиться на другие сайты

Ключ -i в sed я не обнаружил, видно старая версия (RH 7.3)

использовал ключ -e, результат выполнения команды выводится

на экран (нужный резултат), но запись в файл не производилась.

пришлось использовать другую команду:

cat .forward|grep -v userX@email.ru >.forward Laughing

так работает Very Happy

Ссылка на комментарий
Поделиться на другие сайты

А вот ИМХО большой вопрос, корректно ли так писать:

cat SOME_FILE | grep ... >SOMEFILE

Что-то мнится мне, что работать это будет не всегда... Как напр в случае "обнуления" файла в вашем примере...

Ссылка на комментарий
Поделиться на другие сайты

alex_x_st писал(а) вт, 18 октября 2005 11:14

Ключ -i в sed я не обнаружил, видно старая версия (RH 7.3)

использовал ключ -e, результат выполнения команды выводится

на экран (нужный резултат), но запись в файл не производилась.

Ну тады так:

sed '/userX@email.ru/d' .forward >.forward.tmp

mv -f .forward.tmp .forward

Confused

PS -i[sUFFIX], --in-place[=SUFFIX]

- edit files in place (makes backup if extension supplied)

также прочел, что реализация -i через временный файл в GNU.

-e я вообще не использую. Зачем? Sad

Ссылка на комментарий
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
×
×
  • Создать...