From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Date: Thu, 16 Sep 2004 11:11:36 +0300 From: Dolgov OV To: community@altlinux.ru Subject: Re: [Comm] echo =?Windows-1251?Q?"=E4=E2=E5_=EF=E5=F0=E5=EC=E5=ED?= =?Windows-1251?Q?=ED=FB=E5"?= Message-Id: <20040916111136.4d442216.dov@media-link.info> In-Reply-To: <20040916073949.GA15653@elektronik.olimp.chelseti.ru> References: <20040915155346.0764dc8c.dov@media-link.info> <20040915145315.GA28309@maximbo.istranet.ru> <20040915180410.0aad1ac5.dov@media-link.info> <20040915152327.GA29793@maximbo.istranet.ru> <20040915171411.GA2862@elektronik.olimp.chelseti.ru> <20040916095615.485747d3.dov@media-link.info> <20040916073949.GA15653@elektronik.olimp.chelseti.ru> X-Mailer: Sylpheed version 0.9.6claws (GTK+ 1.2.10; i586-alt-linux-gnu) Mime-Version: 1.0 Content-Type: text/plain; charset=Windows-1251 Content-Transfer-Encoding: 8bit X-Virus-Scanned: by amavisd-new at media-link.info 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: Thu, 16 Sep 2004 08:10:03 -0000 Archived-At: List-Archive: List-Post: On Thu, 16 Sep 2004 13:39:49 +0600 Alexandr Leutin wrote: > On Thu, Sep 16, 2004 at 09:56:15AM +0300, Dolgov OV wrote: > > > > а какая разница? > > > $i здесь принимает значение "file1.html\n", т.е. с переводом > > > строки. Ваше echo выдает аргументы в одну строку, т.е. сначала > > > печатает file1.html\n, возвращается на предыдущую строку и > > > печатает $n (с начала строки). > > Я так понял, что у меня таже проблема. > > > > $ for ((i=1; i<787; i++)) ; do n=`grep ^НАЗВАНИЕ $i.html | sed > > s/"НАЗВАНИЕ\ \-\ "// - | sed s/"
"// -` ; echo $i - $n ; done > > 1 - Авраам Руссо - Далеко Далеко > > 2 - Авраам Руссо - Любовь которой Больше Нет > > 3 - Академия - Зараза > > ..... > > Нормально отработал. > > А вот надо наоборот. Результат должен выглядеть так: > > > > Авраам Руссо - Далеко Далеко - 1 > > Авраам Руссо - Любовь которой Больше Нет - 2 > > Академия - Зараза - 3 > > и т.д. > > > > $ for ((i=1; i<787; i++)) ; do n=`grep ^НАЗВАНИЕ $i.html | sed > > s/"НАЗВАНИЕ\ \-\ "// - | sed s/"
"// -` ; echo $n - $i ; done > > - 1ам Руссо - Далеко Далеко > > - 2ам Руссо - Любовь которой Больше Нет > > - 3емия - Зараза > > ...... > > > > Тоесть надо убрать из переменной $n символ перевода строки? Как? > > > > Попробовал двумя разными echo - первое с ключем -n (или я его > > неправильно понял?), не помогло. > > > > $ for ((i=1; i<787; i++)) ; do n=`grep ^НАЗВАНИЕ $i.html | sed > > s/"НАЗВАНИЕ\ \-\ "// - | sed s/"
"// -` ; echo -n $n ; echo -$i; > > done > > for ((i=1; i<787; i++)) ; do n=`grep ^НАЗВАНИЕ $i.html | sed > s/"НАЗВАНИЕ\ \-\ "// - | sed -e "s/\n//g" - ; echo -n $n ; echo -$i; > done > > Пробовали?
- это в HTML так. $ for ((i=1; i<787; i++)) ; do n=`grep ^НАЗВАНИЕ $i.html | sed s/"НАЗВАНИЕ\ \-\ "// - | sed -e "s/\n//g" -` ; echo -n $n ; echo -$i; done -1раам Руссо - Далеко Далеко
-2раам Руссо - Любовь которой Больше Нет
-3адемия - Зараза
..... Результат тотже, только еще и
остался :-( Может есть другой способ? Надо получить текстовый файл со списком в алфавитном порядке: "Название из .html" - "номер этого .html" -- С наилучшими, Олег Долгов Registered Linux user #315454