Re: заменить три пустых строки одной
On Fri, 02 Jun 2006 17:06:19 +0400
Artem Chuprina <ran@ran.pp.ru> wrote:
> Vladimir Zolotykh -> debian-russian@lists.debian.org @ Fri, 2 Jun 2006 15:23:43 +0300:
>
> VZ> Подскажите пожалуйста как
> VZ> заменить три пустых строки подряд одной пустой строкой
> VZ> по всему файлу? Т.е. в исходной файле иногда встречаются
> VZ> три пустых строки (не уверен, что в пустых строках нет пробелов
> VZ> или табуляций), нужно каждую такую тройку заменить одной пустой строкой.
> VZ> Вот пример одной такой тройки пустых строк (в формате OD)
>
> VZ> 0000000 012 012 040 012 040 040 040 040 040 040 040 040 040 040 040 040
> VZ> 0000020 040 040 040 040 040 040 040 012 012
> VZ> 0000031
>
> perl -p0e 's/(^|\n)[ \t]*\n[ \t]*\n[ \t]*(\n|$)/$2/gs'
Признаться не люблю Perl (извини), поэтому вероятно не стремлюсь
узнать его лучше, поэтому не могу сказать, почему команда
удаляет _все_ пустые строки не оставляя ни одной.
--
Vladimir Zolotykh
Reply to: