URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID15
Нить номер: 2923
[ Назад ]

Исходное сообщение
"работа с файлом"

Отправлено rabotnik , 02-Фев-10 06:05 
Здравствуйте!
Подскажите, пожалуйста, как в консоли удалить из файла все строчки, начинающиеся с определенного шаблона? Насколько я понял, это на это способна команда "sed", но что-то запутался в man'e.

Содержание

Сообщения в этом обсуждении
"работа с файлом"
Отправлено rabotnik , 02-Фев-10 06:23 
Нашёл вот такой способ:
cat "file" | grep -v "pattern" > "file"
cat -s "file" > "file2"

Но он мне как-то не очень, т.к. grep удалил все строки, где содержится шаблон, а нужно удалить только строки, начинающиеся с шаблона.


"работа с файлом"
Отправлено rabotnik , 02-Фев-10 07:42 
>Нашёл вот такой способ:
>cat "file" | grep -v "pattern" > "file"
>cat -s "file" > "file2"
>Но он мне как-то не очень.

Этот способ удалось довести до ума посредством grep '^"pattern"'

Расскажите, пожалуйста, про аналогичную функцию sed'a.


"работа с файлом"
Отправлено tux2002 , 02-Фев-10 11:48 
>>Нашёл вот такой способ:
>>cat "file" | grep -v "pattern" > "file"
>>cat -s "file" > "file2"
>>Но он мне как-то не очень.
>
>Этот способ удалось довести до ума посредством grep '^"pattern"'
>
>Расскажите, пожалуйста, про аналогичную функцию sed'a.

sed -i "/^pattern/d" file