<?xml version="1.0" encoding="koi8-r"?>
<rss version="0.91">
<channel>
    <title>OpenForum RSS: как сравнить второе поле разных строк</title>
    <link>https://slinkov.ru/openforum/vsluhforumID9/8301.html</link>
    <description>Есть файл с примерно следующим содержанием:&lt;br&gt;    .  .     .  .  &amp;#124; 510,102,003 &amp;gt;MSISDN 380508647904 not found&amp;lt;&lt;br&gt;2009.06.10 04:42:56&amp;#124; 510,102,003 &amp;gt;MSISDN 380508647904 not found&amp;lt;&lt;br&gt;2009.06.09 15:30:59&amp;#124; 510,120,016 &amp;gt;ticket error: Problems in FETCH: &amp;lt;No statistics tickets from SMP &amp;lt;x1tmd&amp;gt; with SystemID &amp;lt;10&amp;gt; for 1800 seconds&amp;gt;&amp;lt;&quot;&lt;br&gt;2009.06.09 17:31:32&amp;#124; 510,120,016 &amp;gt;ticket error: Problems in FETCH: &amp;lt;No statistics tickets from SMP &amp;lt;x1tmd&amp;gt; with SystemID &amp;lt;10&amp;gt; for 1800 seconds&amp;gt;&amp;lt;&quot;&lt;br&gt;    .  .     .  .  &amp;#124; 904,114,002 &amp;gt;SXFW ,OTHER_ERROR:Couldn&apos;t get user data for login name XPRESS2 login type 0&amp;lt;&lt;br&gt;2009.06.10 05:09:31&amp;#124; 904,114,002 &amp;gt;SXFW ,OTHER_ERROR:Couldn&apos;t get user data for login name XPRESS2 login type 0&amp;lt;&amp;#124;catched in Login()&lt;br&gt;&lt;br&gt;Хочу дописать shell скрипт для удаления повторяющиеся строк у которых поле даты пустое.&lt;br&gt;Алгоритм, на сколько я себе это представляю, должен быть примерно следующим:&lt;br&gt;if &#091; поле 1 строки 1 содержит &quot;    .  .     .  .  &quot; &amp;&amp; поле 2 строки 1 == полю 2 строки 2 &#093;&lt;br&gt;then печата</description>

<item>
    <title>как сравнить второе поле разных строк (phpcoder)</title>
    <link>https://slinkov.ru/openforum/vsluhforumID9/8301.html#5</link>
    <pubDate>Thu, 11 Jun 2009 12:19:02 GMT</pubDate>
    <description>&amp;gt;Я думаю нужно это реализовывать на awk, но я не могу разобраться &lt;br&gt;&amp;gt;с переходом со строки на строку..&lt;br&gt;&lt;br&gt;Вам нужно всего лишь помнить предыдущую строку -- просто сохраните её в переменной (которую можно объявить в блоке BEGIN). И потом сравнивайте текущую, с сохранённой ранее.&lt;br&gt;&lt;br&gt;&amp;gt;Вот примерная наброска (не работает): &lt;br&gt;&amp;gt;awk -F&quot;&amp;#124;&quot; &apos;&#123; &lt;br&gt;&amp;gt;a = $0; &lt;br&gt;&amp;gt;c = substr(a,1,19);  # $1 string a &lt;br&gt;&amp;gt;b = substr(a,index($0,&quot;&amp;#124;&quot;)+1); # $2 string a&lt;br&gt;&lt;br&gt;Используйте split()&lt;br&gt;&lt;br&gt;&amp;gt;NR = NR++ &lt;br&gt;&lt;br&gt;Не думаю, что это хорошая идея, инкрементировать NR вручную, да и можно без этого обойтись.&lt;br&gt;&lt;br&gt;&amp;gt;&#091;оверквотинг удален&#093;&lt;br&gt;&amp;gt; if (c == &quot;    .  .  &lt;br&gt;&amp;gt;   .  .  &quot;) &#123; &lt;br&gt;&amp;gt;  print $0; &lt;br&gt;&amp;gt; &#125; &lt;br&gt;&amp;gt; else &#123; &lt;br&gt;&amp;gt;  print a; &lt;br&gt;&amp;gt; &#125; &lt;br&gt;&amp;gt;&#125; &lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;&#125;&apos; filename* &lt;br&gt;&lt;br&gt;</description>
</item>

<item>
    <title>как сравнить второе поле разных строк (nastr)</title>
    <link>https://slinkov.ru/openforum/vsluhforumID9/8301.html#4</link>
    <pubDate>Thu, 11 Jun 2009 11:42:28 GMT</pubDate>
    <description>Возможно я не правельно сформулировал задачу, но по моему ни grep ни регулярные выражения мне не помогут.&lt;br&gt;Задача следующая:&lt;br&gt;if (поле 2 строки 1 = полю 2 строки 2)&lt;br&gt;&#123;&lt;br&gt;if (поле 1 строки 1 = &quot;    .  .     .  .  &quot;)&lt;br&gt;&#123;&lt;br&gt;print строку 2&lt;br&gt;&#125;&lt;br&gt;else&lt;br&gt;&#123;&lt;br&gt;print строку 1&lt;br&gt;&#125;&lt;br&gt;&#125;&lt;br&gt;else&lt;br&gt;&#123;&lt;br&gt;print строку 1&lt;br&gt;&#125;&lt;br&gt;Я думаю нужно это реализовывать на awk, но я не могу разобраться с переходом со строки на строку..&lt;br&gt;Вот примерная наброска (не работает):&lt;br&gt;awk -F&quot;&amp;#124;&quot; &apos;&#123;&lt;br&gt;a = $0;&lt;br&gt;c = substr(a,1,19);# $1 string a&lt;br&gt;b = substr(a,index($0,&quot;&amp;#124;&quot;)+1);# $2 string a&lt;br&gt;NR = NR++&lt;br&gt;#getline&lt;br&gt;if (b == $2) &#123;&lt;br&gt;if (c == &quot;    .  .     .  .  &quot;) &#123;&lt;br&gt;print $0;&lt;br&gt;&#125;&lt;br&gt;else &#123;&lt;br&gt;print a;&lt;br&gt;&#125;&lt;br&gt;&#125;&lt;br&gt;&lt;br&gt;&#125;&apos; filename*&lt;br&gt;</description>
</item>

<item>
    <title>как сравнить второе поле разных строк (Pahanivo)</title>
    <link>https://slinkov.ru/openforum/vsluhforumID9/8301.html#3</link>
    <pubDate>Wed, 10 Jun 2009 14:33:41 GMT</pubDate>
    <description>&amp;gt;Ну например: &lt;br&gt;&amp;gt;grep ^&#096;date &quot;+&#037;Y&quot;&#096; filename &lt;br&gt;&lt;br&gt;вот это че за ахенея???&lt;br&gt;тебе строки без даты убрать или с дато найти? или как???&lt;br&gt;&amp;gt;grep &apos;^    .  .     &lt;br&gt;&amp;gt;.  .  &amp;#124; &apos; filename &lt;br&gt;&amp;gt;Не совсем понимаю как провести сравнение, пожалуйста, можно пример? &lt;br&gt;&lt;br&gt;еще раз - man grep - смотрим что написано про regex (если слово &quot;регекс&quot; ниочем не говорит - то пример не поможет)&lt;br&gt;&lt;br&gt;ПРЕМЕР:&lt;br&gt;выборка строк которые не начинаются датой фиксированного (твоего) формата:&lt;br&gt;grep -v &quot;^&#091;&#091;:digit:&#093;&#093;&#123;4&#125;&#092;.&#091;&#091;:digit:&#093;&#093;&#123;2&#125;&#092;.&#091;&#091;:digit:&#093;&#093;&#123;2&#125; ... далее додумай сам&lt;br&gt;</description>
</item>

<item>
    <title>как сравнить второе поле разных строк (nastr)</title>
    <link>https://slinkov.ru/openforum/vsluhforumID9/8301.html#2</link>
    <pubDate>Wed, 10 Jun 2009 11:20:33 GMT</pubDate>
    <description>&amp;gt;grep выбери все строки с началом типа 2009.06.10 04:42:56&amp;#124; &lt;br&gt;&amp;gt;man grep , особое внимание там уделить regex&lt;br&gt;&lt;br&gt;Ну например:&lt;br&gt;grep ^&#096;date &quot;+&#037;Y&quot;&#096; filename&lt;br&gt;grep &apos;^    .  .     .  .  &amp;#124; &apos; filename&lt;br&gt;Не совсем понимаю как провести сравнение, пожалуйста, можно пример?&lt;br&gt;</description>
</item>

<item>
    <title>как сравнить второе поле разных строк (Pahanivo)</title>
    <link>https://slinkov.ru/openforum/vsluhforumID9/8301.html#1</link>
    <pubDate>Wed, 10 Jun 2009 08:47:21 GMT</pubDate>
    <description>бред несеш&lt;br&gt;&lt;br&gt;grep выбери все строки с началом типа 2009.06.10 04:42:56&amp;#124;&lt;br&gt;man grep , особое внимание там уделить regex&lt;br&gt;</description>
</item>

</channel>
</rss>
