Как удалить в файле все строки содержащие "51777" ? (обработчик файла статистики)

Модератор: Модераторы разделов

isprov
Сообщения: 8

Как удалить в файле все строки содержащие "51777" ?

Сообщение isprov »

Добрый день !

Есть файл статистики след.вида :

23:22:35.000 UTC Thu Jan 31 2008 |1801 |51777 |457913
23:22:45.000 UTC Thu Jan 31 2008 |1801 |241178 |6790934
23:52:35.000 UTC Thu Jan 31 2008 |105 |484077 |397913
23:49:47.000 UTC Thu Jan 31 2008 |312 |19289 |989742
23:54:20.000 UTC Thu Jan 31 2008 |63 |51777 |55886
23:54:44.000 UTC Thu Jan 31 2008 |171 |42932 |676023
23:52:45.000 UTC Thu Jan 31 2008 |314 |81178 |845045
23:57:30.000 UTC Thu Jan 31 2008 |179 |97301 |619289
23:46:02.000 UTC Thu Jan 31 2008 |1080 |41627 |8456064
00:10:24.000 UTC Fri Feb 01 2008 |38 |78108 |384546

Нужно написать скриптик который бы циклически удалял из этого файла все строки содержащие 51777 , т.е. 1 и 5 строку в приведённом примере. Буду благадарен за любую помощь , т.к. сам в программирование на баш не силён... надеюсь лишь пока :)

ЗЫ: ещё раз всех с победой России над Канадой !!! :)
Спасибо сказали:
Аватара пользователя
0ut
Сообщения: 307
Статус: Злыдень
ОС: *nix

Re: Как удалить в файле все строки содержащие "51777" ?

Сообщение 0ut »

sed '/51777/d' файло > файло_2
Запросы ошибок к операционной системе игнорироваться не могут.
Спасибо сказали:
Аватара пользователя
rm_
Сообщения: 3340
Статус: It's the GNU Age
ОС: Debian

Re: Как удалить в файле все строки содержащие "51777" ?

Сообщение rm_ »

isprov

Код: Выделить всё

grep -v 51777 infile.txt  > outfile.txt

Или чтобы не выбросить лишнего, можно написать:

Код: Выделить всё

grep -v "|51777 |" infile.txt  > outfile.txt
Спасибо сказали:
isprov
Сообщения: 8

Re: Как удалить в файле все строки содержащие "51777" ?

Сообщение isprov »

Спасибо за ответы , оба протестил , оба работают , но так как вариантов решения 2 , скажите - какой предпочтительнее использовать , чтобы даже мысли об ошибках не посещали ? :)
Спасибо сказали:
Аватара пользователя
drujebober
Сообщения: 179
ОС: Debian GNU/Linux lenny

Re: Как удалить в файле все строки содержащие "51777" ?

Сообщение drujebober »

этот ;)
sed -i '/51777/d' файло

зы:наличие ошибки полностью зависит от правильности составленного регулярного выражения — тоесть от вас
Спасибо сказали: