<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[Linux Forum &mdash; Shell-процедуры]]></title>
		<link>https://linuxforum.ru/viewtopic.php?id=10239</link>
		<atom:link href="https://linuxforum.ru/extern.php?action=feed&amp;tid=10239&amp;type=rss" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «Shell-процедуры».]]></description>
		<lastBuildDate>Tue, 22 Nov 2011 14:58:31 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: Shell-процедуры]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=227605#p227605</link>
			<description><![CDATA[<p><a href="http://linuxforum.ru/viewtopic.php?id=18294">http://linuxforum.ru/viewtopic.php?id=18294</a><br />ветка закрыта.</p>]]></description>
			<author><![CDATA[null@example.com (Fat-Zer)]]></author>
			<pubDate>Tue, 22 Nov 2011 14:58:31 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=227605#p227605</guid>
		</item>
		<item>
			<title><![CDATA[Re: Shell-процедуры]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=227019#p227019</link>
			<description><![CDATA[<p>ПОМОГИТЕ ПОЖАЛУЙСТА!!!!!!!!!!!!!!!!<br />ОЧЕНЬ НАДО!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!</p><p>написать shell процедуру которая:<br />выводит на экран список всех пользователей системы включенных в заданную первым параметром группу пользователей <br />для каждого из заданных третьим и следующими параметрами имен пользователей выводит на экран права доступа к заданному вторым параметром файлу</p>]]></description>
			<author><![CDATA[null@example.com (marina555)]]></author>
			<pubDate>Sun, 20 Nov 2011 07:52:22 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=227019#p227019</guid>
		</item>
		<item>
			<title><![CDATA[Re: Shell-процедуры]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=136332#p136332</link>
			<description><![CDATA[<p>отсюда: <a href="http://linuxforum.ru/viewtopic.php?pid=136125#p136125">http://linuxforum.ru/viewtopic.php?pid=136125#p136125</a></p><div class="quotebox"><cite>drBatty пишет:</cite><blockquote><p>FROM=`sed -rn &#039;s/^From:\s+[^&lt;]*&lt;([^&gt; ]+)&gt;.*/\1/;T;p;q&#039; &quot;$FILE_NAME&quot;` <br />CRC=`sed -rn &#039;/^Content-Type:\s+/,$p&#039; &quot;$FILE_NAME&quot; | cksum | sed &#039;s/ .*//&#039;`</p></blockquote></div><br /><p>Страшно? Если вы - пользователь windows, то лучше вешайтесь. Если виндовс-админ - убейтесь ап сервер.</p><p>Остальные могут читать дальше:&nbsp; <img src="https://linuxforum.ru/img/smilies/ag.gif" alt="ag" /> </p><p>наша цель - найти одинаковую почту от одинаковых авторов. причём почты РЕАЛЬНО МНОГО, потому представляется бредом сравнивать каждое сообщение с каждым (для этого потребуется N*N сравнений, и для одного из моих почтовых ящиков N (число постов) равно 1610. столько ждать мы устанем, даже если перепишем код на Си). Решение простое - нужно свернуть каждый пост в одну строчку, и записать эти строчки в файл.</p><p>Первым делом выдёргиваем мыло автора поста, например вот этого:<br /></p><div class="codebox"><pre><code>From: &lt;admin@drbatty.ru&gt;</code></pre></div><p>Видно, что строка начинается на <strong>From:</strong>, после которого идут <strong>несколько пробелов</strong>, потом ещё что-то но не <strong>&lt;</strong> (в&nbsp; этом примере этого нет), потом идёт <strong>&lt;</strong>, потом нужный нам <strong>адрес в котором нет пробелов и &gt;</strong>, а потом идёт <strong>&gt;</strong>, и <strong>ещё что-то</strong>. Запишем выделенное короче, регуляркой: <strong>^From:\s+[^&lt;]*&lt;([^&gt; ]+)&gt;.*</strong></p><p>нам достаточно только первого адреса (некоторые письма содержат 2 адреса), для чего и стоит <strong>T;p;q</strong></p><p>Содержимым письма считается все строчки начиная с <strong>Content-Type:</strong>, и до последней строки. Т.е. <strong>/^Content-Type:\s+/,$</strong>.</p><p>Его я пересылаю в команду <strong>cksum</strong>, которая вычисляет CRC32, и его печатает. Правда она ещё мусор в виде имени файла печатает (прочерк в данном случае), потому понадобилась ещё одна sed для фильтрации мусора.</p><p>вот и всё. Дальше можно сортировать строчки и удалить все не повторяющиеся:<br /><div class="termtitle" style="font-family: sans-serif; position:relative; height:auto; width:auto; background:#3A4061; color:#FFFFFF; padding: 1px;"><b> Консоль:</b></div>
<div class="termcont" style="font-family: Terminus; position:relative; height:auto; width:auto; overflow-x:scroll; white-space: nowrap ; overflow-y:auto;background:#000000; color:#4EF44E; line-height:1.2; padding: 3px; font-size: 1rem; max-height: 60vh">sort | uniq -d</div></p>]]></description>
			<author><![CDATA[null@example.com (drBatty)]]></author>
			<pubDate>Tue, 25 Jan 2011 09:37:36 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=136332#p136332</guid>
		</item>
		<item>
			<title><![CDATA[Re: Shell-процедуры]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=136328#p136328</link>
			<description><![CDATA[<p>примечание к посту <a href="http://linuxforum.ru/viewtopic.php?pid=136055#p136055">http://linuxforum.ru/viewtopic.php?pid=136055#p136055</a><br /></p><div class="codebox"><pre><code>sed -rn &quot;/^$1:/s/([^:]*:){3}//;T;s/,/\n/gp&quot; /etc/group | tee users.tmp</code></pre></div><p>лихо закрученный однострок, неправда-ли?&nbsp; <img src="https://linuxforum.ru/img/smilies/ae.gif" alt="ae" /> <br /></p><div class="codebox"><pre><code>sed -rn &quot;
/^$1:/s/([^:]*:){3}//
T
s/,/\n/gp
&quot; /etc/group | tee users.tmp</code></pre></div><p>Здесь я пропарсил файл <span class="bbu">/etc/group</span>. Тут мы видим мою любимую sed, но не всё так просто: <strong>я всегда заключаю sed-скрипт &#039;в одиночные кавычки&#039;, когда он внутри shell-скрипта.</strong> Кроме исключительных случаев. Тут как раз такой случай, это не просто shell-скрипт, а shell-функция, причём с параметром. Этот параметр называется <strong>$1</strong> и имеет значение <strong>adm</strong>. При этом сам скрипт заключён в &quot;двойные кавычки&quot;, что приводит к замене $1 на adm (это делает shell). Потому <em>на самом деле</em> sed получает такой скрипт:</p><div class="codebox"><pre><code>sed -rn &quot;
/^adm:/s/([^:]*:){3}//
T
s/,/\n/gp
&quot; /etc/group | tee users.tmp</code></pre></div><p>первая строчка <strong>/^adm:/s/([^:]*:){3}//</strong> имеет адресное выражение <strong>/^adm:/</strong>, и потому действует лишь на строки, которые начинаются на adm:, а именно на эту:<br /><strong>adm:x:4:root,adm,daemon</strong><br />команда <strong>s/([^:]*:){3}//</strong> удаляет {три} последовательности (в скобках). Последовательности <strong>[^:]*:</strong>, что по-русски значит: любые символы кроме двоеточия в любом количестве, за которыми идёт двоеточие. Т.е. удаляется<br /><strong>adm:x:4:</strong><br />И остаётся<br /><strong>root,adm,daemon</strong><br />Это список пользователей, которые входят в группу adm, через запятую. Если мы нашли ненужную строчку, то командой <strong>T</strong> мы переходим к анализу следующей, нужная строчка обрабатывается далее - все запятые меняются на перевод строки, и у нас получается три строки:<br /><strong>root<br />adm<br />daemon</strong><br />т.е. список нужных юзеров. Этот список выводится и на экран, и в файл <span class="bbu">users.tmp</span> командой <strong>tee</strong>.<br />(казалось-бы, причём тут чай? <img src="https://linuxforum.ru/img/smilies/bx.gif" alt="bx" /> )</p>]]></description>
			<author><![CDATA[null@example.com (drBatty)]]></author>
			<pubDate>Tue, 25 Jan 2011 09:07:53 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=136328#p136328</guid>
		</item>
		<item>
			<title><![CDATA[Re: Shell-процедуры]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=136321#p136321</link>
			<description><![CDATA[<p>вот в этом посте <a href="http://linuxforum.ru/viewtopic.php?pid=135080#p135080">http://linuxforum.ru/viewtopic.php?pid=135080#p135080</a> применён страшный код:<br /></p><div class="codebox"><pre><code>sed -rn &#039;
                s/.*/\n&amp;\n/
                :l
                s/\n(.)(.*)(.)\n/\3\n\2\n\1/
                t l            
                s/\n//g
                p&#039;</code></pre></div><p>его не я придумал, а прочитал о нём в info sed. вот по-русски: <a href="http://drbatty.ru/sed/ch07.html">http://drbatty.ru/sed/ch07.html</a> </p><br /><p><strong>Инверсия порядка символов в строке.</strong></p><p>Этот скрипт меняет последовательность символов в строке на противоположную, например</p><p><div class="termtitle" style="font-family: sans-serif; position:relative; height:auto; width:auto; background:#3A4061; color:#FFFFFF; padding: 1px;"><b> Консоль:</b></div>
<div class="termcont" style="font-family: Terminus; position:relative; height:auto; width:auto; overflow-x:scroll; white-space: nowrap ; overflow-y:auto;background:#000000; color:#4EF44E; line-height:1.2; padding: 3px; font-size: 1rem; max-height: 60vh">$ echo &quot;ABCDEFGHJ&quot; | ./reverseline.sed<br />JHGFEDCBA<br /></div></p><p>Пример 7.6.</p><div class="codebox"><pre><code>#!/usr/bin/sed -rf

# если в строку нет 2х символов (иначе, длинна строки меньше двух),
# то ничего не делаем
/../! b

# Реверс строки

# сначала в начало и в конец строки добавляются символы \n.
s/^.*$/\
&amp;\
/

# Обмен первого и последнего символа местами, символы меняются
# вместе с маркёрами \n, причём относительный порядок символа и маркёра
# не меняется. Поэтому маркёры оказываются &quot;внутри&quot; - например:
# \n F .* E \n --- до замены
# E \n .* \n F --- после
# Цикл продолжается пока внутри не останется 1 или 0 символов.
tx
:x
s/(\n.)(.*)(.\n)/\3\2\1/
tx

# Удаление маркёров.
s/\n//g</code></pre></div><p>да, код слегка изменён, ибо идею я помнил, а читать свой-же перевод мне было лениво <img src="https://linuxforum.ru/img/smilies/bx.gif" alt="bx" /></p><p>ЗЫЖ у меня тут ошибочка - я не сбросил флаг перехода (а в info sed всё правильно). только это не страшно - в первый раз переход выполняется ВСЕГДА. потому если у нас например менять нечего (реверс строки &quot;Z&quot;), то программа пытается осуществить реверс ДВА раза, хотя достаточно одного. но это не страшно. оба раза команда s НЕ выполняется. <img src="https://linuxforum.ru/img/smilies/bx.gif" alt="bx" /></p>]]></description>
			<author><![CDATA[null@example.com (drBatty)]]></author>
			<pubDate>Tue, 25 Jan 2011 08:41:29 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=136321#p136321</guid>
		</item>
		<item>
			<title><![CDATA[Re: Shell-процедуры]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=136320#p136320</link>
			<description><![CDATA[<p>примечания:</p><p>из этого поста: <a href="http://linuxforum.ru/viewtopic.php?pid=135091#p135091">http://linuxforum.ru/viewtopic.php?pid=135091#p135091</a><br /></p><div class="codebox"><pre><code>sed -n &#039;
    1{
        ${
            /^$/{
                s/.*/no sub/p
                q
            }
        }
    }
    $=&#039; tmp.x</code></pre></div><p>этот скрипт считает строчки, и пишет, сколько строк в файле <span class="bbu">tmp.x</span>. Используется команда <strong>=</strong>, которая в sed выводит номер строки. Но написано не просто =, а $=, что приводит к тому, что выводится номер только последней строки (номер последней строки равен числу строк). На самом деле, можно было-бы написать <strong>wc -l</strong>, что-бы посчитать, сколько-же было замен (каждая замена порождает строчку в файле <span class="bbu">tmp.x</span>), вот только здесь есть и исключение:<br /></p><div class="codebox"><pre><code>1{ # если строчка первая
    ${ # и если строчка последняя (т.е. строчка единственная в файле)
        /^$/{ # и если сразу после начала строки идёт её конец (т.е. единственная строка, да и та пустая)
            s/.*/no sub/p # эта строчка меняется на &quot;no sub&quot; (замен не было), и выводится на экран
            q # на этом скрипт прерывается
        }
    }
}</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (drBatty)]]></author>
			<pubDate>Tue, 25 Jan 2011 08:32:09 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=136320#p136320</guid>
		</item>
		<item>
			<title><![CDATA[Re: Shell-процедуры]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=136131#p136131</link>
			<description><![CDATA[<p>к 10у примеру наверное нужны пояснения:</p><p>1) сначала я составил список всех файлов&nbsp; msgs.lst в почтовом ящике $MAILDIR<br />2) потом я пропарсил все файлы, выдрав оттуда &quot;ОТ КОГО&quot; (From), и саму мессагу. Последнюю я не сохранил, а только вычислил из неё CRC32.<br />3) CRC и FROM я записал в файл crcs.txt<br />4) после этого я отсортировал этот файл, и удалил все строки, кроме тех, которые повторяются (sort | uniq d)<br />5)получившийся список содержит только сообщение с одинаковым автором и crc. Всем им я отправил по сообщению (иным несколько раз, тем, кто прислал мне например 2 одинаковых поста + ещё 2 других одинаковых).</p>]]></description>
			<author><![CDATA[null@example.com (drBatty)]]></author>
			<pubDate>Mon, 24 Jan 2011 17:31:50 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=136131#p136131</guid>
		</item>
		<item>
			<title><![CDATA[Re: Shell-процедуры]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=136125#p136125</link>
			<description><![CDATA[<div class="quotebox"><blockquote><p>10.<br />написать shell-процедуру,которая проверяет почтовый ящик на наличие в нем сообщений, находит в почтовом ящике одинаковые по тексту сообщения, всем пользователям, приславшим более одного сообщения с одинаковым текстом, рассылает по почте сообщения, текст которого содержится в файле, имя которого передается в качестве параметра.</p></blockquote></div><div class="codebox"><pre><code>#!/bin/sh

function ff()
{
    MAILDIR=&quot;./cur&quot;

    find $MAILDIR -type f &gt;msgs.lst

    if [ -s crcs.txt ]; then
        rm -v crcs.txt
    fi

    while read FILE_NAME
    do
        echo &quot;scaning message &#039;$FILE_NAME&#039;&quot;
        FROM=`sed -rn &#039;s/^From:\s+[^&lt;]*&lt;([^&gt; ]+)&gt;.*/\1/;T;p;q&#039; &quot;$FILE_NAME&quot;`
        CRC=`sed -rn &#039;/^Content-Type:\s+/,$p&#039; &quot;$FILE_NAME&quot; | cksum | sed &#039;s/ .*//&#039;`
        if [ -z &quot;$FROM&quot; ] || [ -z &quot;$CRC&quot; ]; then
            continue
        fi
        echo &quot;FROM: &#039;$FROM&#039;, CRC=&#039;$CRC&#039;&quot;
        echo &quot;$CRC $FROM&quot; &gt;&gt;crcs.txt
    done &lt;msgs.lst

    sort crcs.txt | uniq -d | tee dbl.txt

    while read CRC MAIL
    do
        echo &quot;send message for $MAIL&quot;
        # cat &quot;$1&quot; | mail -s&quot;Subj&quot; &quot;$MAIL&quot;
    done &lt; dbl.txt
}

ff &quot;msg.txt&quot;</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (drBatty)]]></author>
			<pubDate>Mon, 24 Jan 2011 17:14:33 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=136125#p136125</guid>
		</item>
		<item>
			<title><![CDATA[Re: Shell-процедуры]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=136102#p136102</link>
			<description><![CDATA[<p>ясненько)))</p>]]></description>
			<author><![CDATA[null@example.com (Remka)]]></author>
			<pubDate>Mon, 24 Jan 2011 16:24:16 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=136102#p136102</guid>
		</item>
		<item>
			<title><![CDATA[Re: Shell-процедуры]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=136099#p136099</link>
			<description><![CDATA[<div class="quotebox"><cite>Remka пишет:</cite><blockquote><p>очень часто мелькает имя ksu это рандомное или что то значит?)))</p></blockquote></div><p>это имя юзера от которого я сейчас работаю.</p><p>PS: а ещё это имя здешнего компьютера. короче я сейчас ksu@ksu. просто это не мой компьютер <img src="https://linuxforum.ru/img/smilies/ab.gif" alt="ab" /></p>]]></description>
			<author><![CDATA[null@example.com (drBatty)]]></author>
			<pubDate>Mon, 24 Jan 2011 16:16:26 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=136099#p136099</guid>
		</item>
		<item>
			<title><![CDATA[Re: Shell-процедуры]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=136098#p136098</link>
			<description><![CDATA[<div class="quotebox"><cite>Gard пишет:</cite><blockquote><p>10.<br />написать shell-процедуру,которая проверяет почтовый ящик на наличие в нем сообщений, находит в почтовом ящике одинаковые по тексту сообщения, всем пользователям, приславшим более одного сообщения с одинаковым текстом, рассылает по почте сообщения, текст которого содержится в файле, имя которого передается в качестве параметра.</p></blockquote></div><p>фига се! это целое исследование...</p>]]></description>
			<author><![CDATA[null@example.com (drBatty)]]></author>
			<pubDate>Mon, 24 Jan 2011 16:15:39 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=136098#p136098</guid>
		</item>
		<item>
			<title><![CDATA[Re: Shell-процедуры]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=136087#p136087</link>
			<description><![CDATA[<p>очень часто мелькает имя ksu это рандомное или что то значит?)))</p>]]></description>
			<author><![CDATA[null@example.com (Remka)]]></author>
			<pubDate>Mon, 24 Jan 2011 15:45:05 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=136087#p136087</guid>
		</item>
		<item>
			<title><![CDATA[Re: Shell-процедуры]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=136086#p136086</link>
			<description><![CDATA[<div class="quotebox"><cite>Gard пишет:</cite><blockquote><p>14.<br />Написать shell-процедуру, которая всем пользователям, не включеннным в заданную первым параметром группу, посылает по почте сообщения о текущем времени и дате; всем пользователям, включенным в заданную первым параметром группу, посылает по почте сообщения Happy New Year!</p></blockquote></div><br /><div class="codebox"><pre><code>#!/bin/bash

function ff()
{
    HOST=&quot;ksu&quot;
    GROUP=&quot;$1&quot;
    while read STR
    do
        USER=`echo &quot;$STR&quot; | sed -r &#039;s/:.*//&#039;`
        echo &quot;for user &#039;$USER&#039;&quot;
        GR=`sed -n &quot;s/^$GROUP:.*$USER[^:]*/&amp;/p&quot; /etc/group`
        if [ -n &quot;$GR&quot; ]; then
            echo &quot;user $USER in group $GROUP&quot;
            echo &quot;Happy New Year!&quot; | mail -s&quot;subj&quot; $USER@$HOST
        else
            echo &quot;user $USER whithout $GROUP&quot;
            date | mail -s&quot;curent date&quot; $USER@$HOST
        fi
    done &lt; /etc/passwd
}

ff &quot;adm&quot;</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (drBatty)]]></author>
			<pubDate>Mon, 24 Jan 2011 15:41:49 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=136086#p136086</guid>
		</item>
		<item>
			<title><![CDATA[Re: Shell-процедуры]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=136076#p136076</link>
			<description><![CDATA[<div class="quotebox"><cite>Gard пишет:</cite><blockquote><p>13.<br />Написать shell-процедуру, кторая, всем пользователям, работающим в данный момент в системе, имена которых задаются третьим и последующими параметрами, рассылает сообщения из файла, имя которого передается вторым параметром; повторяет сообщения с периодичностью, задаваемой первым параметром; прекращает выдачу сообщений при вводе слова quit.</p></blockquote></div><div class="codebox"><pre><code>#!/bin/bash

function ff()
{
    echo &quot;users:&quot;
    who | tee users.tmp
    PAUSE=&quot;$1&quot;
    MSG=&quot;$2&quot;
    COUNT=0
    declare -a USERS
    while [ -n &quot;$3&quot; ]
    do
        USERS[$COUNT]=&quot;$3&quot;
        shift
        echo &quot;USER $COUNT &#039;${USERS[$COUNT]}&#039;&quot;
        (( COUNT = COUNT + 1 ))
    done
    STR=&quot;&quot;
    while [ &quot;$STR&quot; != &quot;quit&quot; ]
    do
        COUNT=0
        while [ -n &quot;${USERS[$COUNT]}&quot; ]
        do
            USER=${USERS[$COUNT]}
            if grep -q -E &quot;^$USER&quot; users.tmp; then
                TTY=`sed -rn &quot;s/^$USER\s+(\S+).*/\1/;T;p;q&quot; users.tmp`
                echo &quot;send mesage for $USER ($TTY)&quot;
                cat &quot;$MSG&quot; | write &quot;$USER&quot; &quot;$TTY&quot;
            fi
            (( COUNT = COUNT + 1 ))
        done
        read -t$PAUSE -p&quot;Input quit if exit($PAUSE sec): &quot; STR
        echo
    done
}

ff &quot;2&quot; &quot;msg.txt&quot; &quot;root&quot; &quot;ksu&quot;</code></pre></div><p>а тут у нас массив USERS используется. там имена юзеров, которым надо слать мессаги.</p>]]></description>
			<author><![CDATA[null@example.com (drBatty)]]></author>
			<pubDate>Mon, 24 Jan 2011 15:16:40 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=136076#p136076</guid>
		</item>
		<item>
			<title><![CDATA[Re: Shell-процедуры]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=136057#p136057</link>
			<description><![CDATA[<div class="quotebox"><cite>Remka пишет:</cite><blockquote><p>Вдруг ты бы разобрался с условием задачи и написал бы свой?)))</p></blockquote></div><p>что это за задача? мне проще с нуля писать...</p>]]></description>
			<author><![CDATA[null@example.com (drBatty)]]></author>
			<pubDate>Mon, 24 Jan 2011 14:38:47 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=136057#p136057</guid>
		</item>
	</channel>
</rss>
