From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Date: Tue, 05 Oct 2004 17:07:04 +0400 To: community@altlinux.ru Subject: Re: [Comm] sed -? References: <20041005164309.1f3826e6.dov@media-link.info> From: "Aleksander N. Gorohovski" Organization: DonNTU Content-Type: text/plain; format=flowed; delsp=yes; charset=koi8-r MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Message-ID: In-Reply-To: <20041005164309.1f3826e6.dov@media-link.info> User-Agent: Opera M2/7.54 (Linux, build 751) X-BeenThere: community@altlinux.ru X-Mailman-Version: 2.1.5 Precedence: list Reply-To: community@altlinux.ru List-Id: Mailing list for ALT Linux users List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 05 Oct 2004 14:04:06 -0000 Archived-At: List-Archive: List-Post: On Tue, 5 Oct 2004 16:43:09 +0300, Dolgov OV wrote: > Здравствуйте. > > Подскажите плз. как sed'ом заменить некий patern переводом строки? > Или может не sed'ом, а perl'ом, но задача вот в чем: > Есть текстовый файл с фрагментами html кода. В каждой строке от 1-го до > 30-ти участков, разделенных последовательностью > Вот эти я и хочу заменить переводом строки, дабы уже потом > обрабатывать каждую отдельную ячейку, как отдельную строку в файле. > > Пробовал > cat list.txt | sed s/"<\/TD><\/tr>"/\n/g - > list1.txt > тупо подставляется n. > > perl -nwe 'print "$1\n" if /(.*)<\/TD><\/tr>/' list.txt > > list1.txt > отбрасывает только последнюю последовательность. Может можно както > perl'у объяснить чтобы он шел последовательно по строке до искомого > patern'а? Напиши програмку на perl, типа --------------------------------- #!/usr/bin/perl open (FILE,"list1.txt"); @a=; close (FILE); my $i; for (@a) { /<\/TD><\/tr>/\n/g; $a[$i++]=$_; } open (FILE,">list2.txt"); print FILE @a; close (FILE); ------------------------- Если ничего не пропустил, должно работать