<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Блог сисадмина &#187; sed</title>
	<atom:link href="http://avz.org.ua/wp/tag/sed/feed/" rel="self" type="application/rss+xml" />
	<link>http://avz.org.ua/wp</link>
	<description>Заметки о Linux и прочие полезные howto</description>
	<lastBuildDate>Fri, 30 Jul 2010 18:37:26 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>Штучки с sed-ом</title>
		<link>http://avz.org.ua/wp/2010/01/27/sed-trick/</link>
		<comments>http://avz.org.ua/wp/2010/01/27/sed-trick/#comments</comments>
		<pubDate>Wed, 27 Jan 2010 20:06:09 +0000</pubDate>
		<dc:creator>Admin</dc:creator>
				<category><![CDATA[ *nix]]></category>
		<category><![CDATA[Howto]]></category>
		<category><![CDATA[sed]]></category>

		<guid isPermaLink="false">http://avz.org.ua/wp/?p=653</guid>
		<description><![CDATA[sed &#8211; это stream editor. Часто используется в скриптах для различных преобразований текста. Ниже приведено несколько типичных примеров. Удаление из файла заданных строк. Пусть, например, нужно удалить строки из файла, в которых содержиться подстрока &#171;phone: xxx-xx-xx&#187; (вместо символа x &#8211; цифры): sed &#34;/phone: [0-9]\{3\}-[0-9]\{2\}-[0-9]\{2\}/ d&#34; somefile.txt Здесь между слешами (/) задается шаблон (регулярное выражение), после [...]


Похожие заметки:<ol><li><a href='http://avz.org.ua/wp/2010/03/05/%d0%b4%d0%b5%d1%82%d0%b0%d0%bb%d1%8c%d0%bd%d0%be%d0%b5-%d0%bb%d0%be%d0%b3%d0%b8%d1%80%d0%be%d0%b2%d0%b0%d0%bd%d0%b8%d0%b5-%d0%b2-samba/' rel='bookmark' title='Permanent Link: Детальное логирование в Samba'>Детальное логирование в Samba</a> <small>Иногда ну очень нужно узнать кто же создал или удалил определенный файл с файлового сервера. Стандартный лог-файл, который Samba пишет...</small></li>
<li><a href='http://avz.org.ua/wp/2009/06/04/freebsd-nat/' rel='bookmark' title='Permanent Link: Строим NAT средствами FreeBSD'>Строим NAT средствами FreeBSD</a> <small>Для наглядности считаем, что внутренняя сеть адресуется блоком 192.168.0.0/24, шлюзом для внутренней сети выступает 192.168.0.1, IP-адрес внешнего интерфейса роутера &ndash;...</small></li>
<li><a href='http://avz.org.ua/wp/2009/05/14/samba-cups-error/' rel='bookmark' title='Permanent Link: Ошибка Samba: Unable to connect to CUPS server'>Ошибка Samba: Unable to connect to CUPS server</a> <small>Часто встречается ситуация, когда на файловом сервере под Samba, где никаких принтеров нет и не будет, в лог-файл smbd.log постоянно...</small></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p><strong>sed</strong> &ndash; это <strong>s</strong>tream <strong>ed</strong>itor. Часто используется в скриптах для различных преобразований текста. Ниже приведено несколько типичных примеров.</p>
<ol>
<li>Удаление из файла заданных строк.<br />
Пусть, например, нужно удалить строки из файла, в которых содержиться подстрока &laquo;phone: xxx-xx-xx&raquo; (вместо символа x &#8211; цифры):</p>
<div class="geshi no bash">
<ol>
<li class="li1">
<div class="de1"><span class="kw2">sed</span> <span class="st0">&quot;/phone: [0-9]<span class="es0">\{</span>3<span class="es0">\}</span>-[0-9]<span class="es0">\{</span>2<span class="es0">\}</span>-[0-9]<span class="es0">\{</span>2<span class="es0">\}</span>/ d&quot;</span> somefile.txt</div>
</li>
</ol>
</div>
<p>Здесь между слешами (/) задается шаблон (регулярное выражение), после него стоит оператор <strong>&laquo;d&raquo;</strong> (от слова delete), который удаляет строки, совпадающие с шаблоном. Результат:</p>
<div class="geshi no bash">
<ol>
<li class="li1">
<div class="de1"><span class="re1">$cat</span> <span class="kw3">test</span>.txt</div>
</li>
<li class="li1">
<div class="de1">phone: <span class="nu0">111</span><span class="nu0">-22</span><span class="nu0">-44</span></div>
</li>
<li class="li1">
<div class="de1">phone: <span class="nu0">111</span><span class="nu0">-22</span><span class="nu0">-44</span></div>
</li>
<li class="li1">
<div class="de1">phone: <span class="nu0">311</span><span class="nu0">-22</span>-d4</div>
</li>
<li class="li1">
<div class="de1">phone: &nbsp;<span class="nu0">111</span><span class="nu0">-22</span><span class="nu0">-55</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="re1">$sed</span> <span class="st0">&quot;/phone: [0-9]<span class="es0">\{</span>3<span class="es0">\}</span>-[0-9]<span class="es0">\{</span>2<span class="es0">\}</span>-[0-9]<span class="es0">\{</span>2<span class="es0">\}</span>/ d&quot;</span> <span class="kw3">test</span>.txt</div>
</li>
<li class="li1">
<div class="de1">phone: <span class="nu0">311</span><span class="nu0">-22</span>-d4</div>
</li>
<li class="li1">
<div class="de1">phone: &nbsp;<span class="nu0">111</span><span class="nu0">-22</span><span class="nu0">-55</span></div>
</li>
</ol>
</div>
<p>Если нужно, чтобы изменения происходили сразу в файле, без вывода в stdout, нужно добавить ключ <strong>--in-place (-i)</strong>.</p>
<li>Добавление в файл строки в определённом месте.<br />
Вставляем мета-тег с указанием кодировки документа перед закрывающим тегом &lt;/head&gt; во все файлы с расширением .html в текущей директории:</p>
<div class="geshi no bash">
<ol>
<li class="li1">
<div class="de1"><span class="kw2">sed</span> -i <span class="st0">&#39;/&lt;<span class="es0">\/</span>head&gt;/ i &lt;meta http-equiv=&quot;Content-Type&quot; content=&quot;text<span class="es0">\/</span>html; charset=utf-8&quot;&gt;&#39;</span> <span class="sy0">*</span>.html</div>
</li>
<li class="li1">
<div class="de1"><span class="kw2">sed</span> -i -r <span class="st0">&quot;s/<span class="es0">\r</span>//g&quot;</span> <span class="sy0">*</span>.html</div>
</li>
</ol>
</div>
<p>Второй sed нужен чтобы поудалять символ возврата каретки с ASCII-кодом 13 в конце строк, который почему-то появляется в результате работы первого sed-а.
</li>
</li>
<li>Удаление из файла первых нескольких строк до тех пор, пока не встретиться пустая строка. Такое часто бывает нужно при обработке писем &ndash; если нужно отделить заголовок письма от его тела:
<div class="geshi no bash">
<ol>
<li class="li1">
<div class="de1"><span class="re1">$cat</span> <span class="kw3">test</span>.txt</div>
</li>
<li class="li1">
<div class="de1">Some text <span class="kw1">in</span> mail header.</div>
</li>
<li class="li1">
<div class="de1">Another text line <span class="kw1">in</span> mail header.</div>
</li>
<li class="li1">
<div class="de1">And so on&#8230;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1">Here starts mail body.</div>
</li>
<li class="li1">
<div class="de1">Some text <span class="kw1">in</span> mail body.</div>
</li>
<li class="li1">
<div class="de1">Use <span class="kw2">sed</span> to <span class="kw2">make</span> things <span class="kw2">nice</span> :<span class="br0">&#41;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="re1">$sed</span> <span class="st0">&#39;1,/^$/ d&#39;</span> <span class="kw3">test</span>.txt</div>
</li>
<li class="li1">
<div class="de1">Here starts mail body.</div>
</li>
<li class="li1">
<div class="de1">Some text <span class="kw1">in</span> mail body.</div>
</li>
<li class="li1">
<div class="de1">Use <span class="kw2">sed</span> to <span class="kw2">make</span> things <span class="kw2">nice</span> :<span class="br0">&#41;</span></div>
</li>
</ol>
</div>
<p>Здесь видно, что первые три строки были удалены. Шаблон <strong>/^$/</strong> означает пустую строку (символ <strong>^</strong> совпадает с началом строки, а символ <strong>$</strong> &ndash; с концом строки. Так как между ними ничего нет, то строка пустая). Выражение <strong>1,/^$/</strong> означает диапазон строк с 1-ой до пустой включительно. Оператор <strong>&laquo;d&raquo;</strong> &ndash; удаление.
</li>
<li>Замена текста. Для этого испольузется оператор <strong>s///</strong>:
<div class="geshi no bash">
<ol>
<li class="li1">
<div class="de1"><span class="re1">$cat</span> <span class="kw3">test</span>.txt</div>
</li>
<li class="li1">
<div class="de1">I want to have <span class="kw2">nice</span> house with <span class="nu0">4</span> rooms.</div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="re1">$sed</span> <span class="st0">&quot;s/<span class="es0">\(</span>nice<span class="es0">\)</span>/very <span class="es0">\1</span>/&quot;</span> <span class="kw3">test</span>.txt <span class="sy0">|</span> <span class="kw2">sed</span> <span class="st0">&quot;s/[0-9]/12/&quot;</span></div>
</li>
<li class="li1">
<div class="de1">I want to have very <span class="kw2">nice</span> house with <span class="nu0">12</span> rooms.</div>
</li>
</ol>
</div>
<p>В операторе замены <strong>s///</strong> между 1-ым и 2-ым слешем указывается шаблон, который нужно найти для замены, а между 2-ым и 3-им слешем &ndash; текст, НА который нужно заменить шаблон. Если в шаблоне используются круглые скобки (их нужно экранировать обратнымы слешами), то текст между скобками будет доступен для использвания во второй части оператора (это называется backreference). Для вставки текста, заключенного в 1-ую пару скобок, применяется конструкция <strong>\1</strong>, для текста между второй парой скобок &ndash; <strong>\2</strong> и т.д.
</li>
</ol>


<p>Похожие заметки:<ol><li><a href='http://avz.org.ua/wp/2010/03/05/%d0%b4%d0%b5%d1%82%d0%b0%d0%bb%d1%8c%d0%bd%d0%be%d0%b5-%d0%bb%d0%be%d0%b3%d0%b8%d1%80%d0%be%d0%b2%d0%b0%d0%bd%d0%b8%d0%b5-%d0%b2-samba/' rel='bookmark' title='Permanent Link: Детальное логирование в Samba'>Детальное логирование в Samba</a> <small>Иногда ну очень нужно узнать кто же создал или удалил определенный файл с файлового сервера. Стандартный лог-файл, который Samba пишет...</small></li>
<li><a href='http://avz.org.ua/wp/2009/06/04/freebsd-nat/' rel='bookmark' title='Permanent Link: Строим NAT средствами FreeBSD'>Строим NAT средствами FreeBSD</a> <small>Для наглядности считаем, что внутренняя сеть адресуется блоком 192.168.0.0/24, шлюзом для внутренней сети выступает 192.168.0.1, IP-адрес внешнего интерфейса роутера &ndash;...</small></li>
<li><a href='http://avz.org.ua/wp/2009/05/14/samba-cups-error/' rel='bookmark' title='Permanent Link: Ошибка Samba: Unable to connect to CUPS server'>Ошибка Samba: Unable to connect to CUPS server</a> <small>Часто встречается ситуация, когда на файловом сервере под Samba, где никаких принтеров нет и не будет, в лог-файл smbd.log постоянно...</small></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://avz.org.ua/wp/2010/01/27/sed-trick/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Быстрая массовая правка конфигураций нескольких подинтерфейсов</title>
		<link>http://avz.org.ua/wp/2009/04/24/sed-config-editing/</link>
		<comments>http://avz.org.ua/wp/2009/04/24/sed-config-editing/#comments</comments>
		<pubDate>Fri, 24 Apr 2009 07:53:21 +0000</pubDate>
		<dc:creator>Admin</dc:creator>
				<category><![CDATA[ *nix]]></category>
		<category><![CDATA[Cisco]]></category>
		<category><![CDATA[RPF]]></category>
		<category><![CDATA[sed]]></category>

		<guid isPermaLink="false">http://avz.org.ua/wp/?p=120</guid>
		<description><![CDATA[Пусть имеем маршрутизатор с множеством логических интерфейсов, для каждого из которых нужно добавить/заменить один и тот же фрагмент в конфиге, например добавить строку &#171;shutdown&#187;. Сделать это можно с помощью старого доброго sed. Пример конфига: $ cat conf.txt interface FastEthernet0/1.302 &#160; description Client1 &#160; encapsulation dot1Q 302 &#160; ip address 10.10.10.141 255.255.255.252 &#160; ip verify unicast [...]


Похожие заметки:<ol><li><a href='http://avz.org.ua/wp/2009/02/09/cisco-acl/' rel='bookmark' title='Permanent Link: Cisco ACL'>Cisco ACL</a> <small>К, примеру, стоит задача заблокировать отправку почты по протоколу SMTP для пользователя с затрояненной машинкой, которая рассылает спам. Создаем расширенный...</small></li>
<li><a href='http://avz.org.ua/wp/2009/09/14/catalyst-port-mirroring/' rel='bookmark' title='Permanent Link: Port mirroring в Cisco Catalyst'>Port mirroring в Cisco Catalyst</a> <small>Есть задача: проанализировать трафик для определенного сетевого устройства. При этом доступа на это устройство у нас нет, либо анализ сильно...</small></li>
<li><a href='http://avz.org.ua/wp/2009/04/16/sdm-templates/' rel='bookmark' title='Permanent Link: И снова о кошках: SDM templates'>И снова о кошках: SDM templates</a> <small>Иногда встречаются ситуации, когда L3-коммутатор маршрутизирует трафик намного медленее, чем от него ожидается. В таких случаях нужно проверить правильность установки...</small></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>Пусть имеем маршрутизатор с множеством логических интерфейсов, для каждого из которых нужно добавить/заменить один и тот же фрагмент в конфиге, например добавить строку &laquo;shutdown&raquo;. Сделать это можно с помощью старого доброго sed.</p>
<p>Пример конфига: </p>
<div class="geshi no bash">
<ol>
<li class="li1">
<div class="de1">$ <span class="kw2">cat</span> conf.txt</div>
</li>
<li class="li1">
<div class="de1">interface FastEthernet0<span class="sy0">/</span><span class="nu0">1.302</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; description Client1</div>
</li>
<li class="li1">
<div class="de1">&nbsp; encapsulation dot1Q <span class="nu0">302</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; ip address <span class="nu0">10.10</span><span class="nu0">.10</span><span class="nu0">.141</span> <span class="nu0">255.255</span><span class="nu0">.255</span><span class="nu0">.252</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; ip verify unicast <span class="kw3">source</span> reachable-via rx</div>
</li>
<li class="li1">
<div class="de1"><span class="sy0">!</span></div>
</li>
<li class="li1">
<div class="de1">interface FastEthernet0<span class="sy0">/</span><span class="nu0">1.304</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; description Client2</div>
</li>
<li class="li1">
<div class="de1">&nbsp; encapsulation dot1Q <span class="nu0">304</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; ip address <span class="nu0">10.10</span><span class="nu0">.10</span><span class="nu0">.241</span> <span class="nu0">255.255</span><span class="nu0">.255</span><span class="nu0">.252</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; ip verify unicast <span class="kw3">source</span> reachable-via rx</div>
</li>
<li class="li1">
<div class="de1"><span class="sy0">!</span></div>
</li>
<li class="li1">
<div class="de1">interface FastEthernet0<span class="sy0">/</span><span class="nu0">1.313</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; description Client3</div>
</li>
<li class="li1">
<div class="de1">&nbsp; encapsulation dot1Q <span class="nu0">313</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; ip address <span class="nu0">10.10</span><span class="nu0">.10</span><span class="nu0">.33</span> <span class="nu0">255.255</span><span class="nu0">.255</span><span class="nu0">.252</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; ip verify unicast <span class="kw3">source</span> reachable-via rx</div>
</li>
<li class="li1">
<div class="de1"><span class="sy0">!</span></div>
</li>
<li class="li1">
<div class="de1">interface FastEthernet0<span class="sy0">/</span><span class="nu0">1.314</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; description Client4</div>
</li>
<li class="li1">
<div class="de1">&nbsp; encapsulation dot1Q <span class="nu0">314</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; ip address <span class="nu0">10.10</span><span class="nu0">.20</span><span class="nu0">.229</span> <span class="nu0">255.255</span><span class="nu0">.255</span><span class="nu0">.252</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; ip verify unicast <span class="kw3">source</span> reachable-via rx</div>
</li>
<li class="li1">
<div class="de1">&nbsp; shutdown</div>
</li>
</ol>
</div>
<p>После команды</p>
<div class="geshi no bash">
<ol>
<li class="li1">
<div class="de1">$ <span class="kw2">cat</span> conf.txt <span class="sy0">|</span> <span class="kw2">sed</span> -r <span class="st0">&quot;s/(interface.*)$/<span class="es0">\1</span><span class="es0">\n</span> &nbsp;shutdown/&quot;</span> <span class="sy0">&gt;</span> conf_new.txt</div>
</li>
</ol>
</div>
<p>получаем тот же конфиг, но с уже добавленным &laquo;shutdown&raquo; для каждого подинтерфейса:</p>
<div class="geshi no bash">
<ol>
<li class="li1">
<div class="de1">$ <span class="kw2">cat</span> conf_new.txt</div>
</li>
<li class="li1">
<div class="de1">interface FastEthernet0<span class="sy0">/</span><span class="nu0">1.302</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; shutdown</div>
</li>
<li class="li1">
<div class="de1">&nbsp; description Client1</div>
</li>
<li class="li1">
<div class="de1">&nbsp; encapsulation dot1Q <span class="nu0">302</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; ip address <span class="nu0">10.10</span><span class="nu0">.10</span><span class="nu0">.141</span> <span class="nu0">255.255</span><span class="nu0">.255</span><span class="nu0">.252</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; ip verify unicast <span class="kw3">source</span> reachable-via rx</div>
</li>
<li class="li1">
<div class="de1"><span class="sy0">!</span></div>
</li>
<li class="li1">
<div class="de1">interface FastEthernet0<span class="sy0">/</span><span class="nu0">1.304</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; shutdown</div>
</li>
<li class="li1">
<div class="de1">&nbsp; description Client2</div>
</li>
<li class="li1">
<div class="de1">&nbsp; encapsulation dot1Q <span class="nu0">304</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; ip address <span class="nu0">10.10</span><span class="nu0">.10</span><span class="nu0">.241</span> <span class="nu0">255.255</span><span class="nu0">.255</span><span class="nu0">.252</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; ip verify unicast <span class="kw3">source</span> reachable-via rx</div>
</li>
<li class="li1">
<div class="de1"><span class="sy0">!</span></div>
</li>
<li class="li1">
<div class="de1">interface FastEthernet0<span class="sy0">/</span><span class="nu0">1.313</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; shutdown</div>
</li>
<li class="li1">
<div class="de1">&nbsp; description Client3</div>
</li>
<li class="li1">
<div class="de1">&nbsp; encapsulation dot1Q <span class="nu0">313</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; ip address <span class="nu0">10.10</span><span class="nu0">.10</span><span class="nu0">.33</span> <span class="nu0">255.255</span><span class="nu0">.255</span><span class="nu0">.252</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; ip verify unicast <span class="kw3">source</span> reachable-via rx</div>
</li>
<li class="li1">
<div class="de1"><span class="sy0">!</span></div>
</li>
<li class="li1">
<div class="de1">interface FastEthernet0<span class="sy0">/</span><span class="nu0">1.314</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; shutdown</div>
</li>
<li class="li1">
<div class="de1">&nbsp; description Client4</div>
</li>
<li class="li1">
<div class="de1">&nbsp; encapsulation dot1Q <span class="nu0">314</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; ip address <span class="nu0">10.10</span><span class="nu0">.20</span><span class="nu0">.229</span> <span class="nu0">255.255</span><span class="nu0">.255</span><span class="nu0">.252</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; ip verify unicast <span class="kw3">source</span> reachable-via rx</div>
</li>
<li class="li1">
<div class="de1">&nbsp; shutdown</div>
</li>
</ol>
</div>
<p>Да, у FastEthernet0/1.314 получилось два shutdown-а, но это не страшно, ведь маслом кашу не испортишь :).</p>


<p>Похожие заметки:<ol><li><a href='http://avz.org.ua/wp/2009/02/09/cisco-acl/' rel='bookmark' title='Permanent Link: Cisco ACL'>Cisco ACL</a> <small>К, примеру, стоит задача заблокировать отправку почты по протоколу SMTP для пользователя с затрояненной машинкой, которая рассылает спам. Создаем расширенный...</small></li>
<li><a href='http://avz.org.ua/wp/2009/09/14/catalyst-port-mirroring/' rel='bookmark' title='Permanent Link: Port mirroring в Cisco Catalyst'>Port mirroring в Cisco Catalyst</a> <small>Есть задача: проанализировать трафик для определенного сетевого устройства. При этом доступа на это устройство у нас нет, либо анализ сильно...</small></li>
<li><a href='http://avz.org.ua/wp/2009/04/16/sdm-templates/' rel='bookmark' title='Permanent Link: И снова о кошках: SDM templates'>И снова о кошках: SDM templates</a> <small>Иногда встречаются ситуации, когда L3-коммутатор маршрутизирует трафик намного медленее, чем от него ожидается. В таких случаях нужно проверить правильность установки...</small></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://avz.org.ua/wp/2009/04/24/sed-config-editing/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>
