<?xml version="1.0" encoding="koi8-r"?>
<rss version="0.91">
<channel>
    <title>OpenForum RSS: Извлеч значение из процедуры awk</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID9/9426.html</link>
    <description>Доброго времени!&lt;br&gt;&lt;br&gt;Хочу обратиться за консультацией. Вопрос по оптимизации скрипта. &lt;br&gt;&lt;br&gt;Имеется скрипт, где AWK  создаёт отчёт: &lt;br&gt;(фрагмент)&lt;br&gt;....................&lt;br&gt;awk &apos;count+=$7;&lt;br&gt;         BEGIN &#123;&lt;br&gt;print &quot;Адр.источник       Порт     Адр.назначения    Порт   Протокол   Байт     Всего &#092;n--------------------------------------------------------------------&amp;#124;&quot;&lt;br&gt;                &#125;&lt;br&gt;       END &#123;&lt;br&gt;print &quot;&#092;n------------------------------------------------------------------------------- &#092;n income   Суммарный входящий трафик с начала месяца(байт):&quot; &#092;&lt;br&gt;  count;    &#125;&apos; &amp;gt; $doc_in 2&amp;gt;&amp;1&lt;br&gt;.............&lt;br&gt;&lt;br&gt;В разультате, получаем отчёт с разобранной статистикой трафика и подсчитанным количеством байт в конце файла.&lt;br&gt;Но есть желание результаты подсчёта складывать в отдельный файл. Можно, конечно, написать так: &lt;br&gt;awk &apos;&#123;count+=$7&#125;; END &#123; print count&#125;&apos; $doc_in &amp;gt;&amp;gt; $total или воспользоваться функцией substr(), но ведь это не рационально....Перелапачивать заново весь файл? подсчёт-то уже выполнен. &lt;br&gt;&lt;br&gt;Может быть, есть мнения, как </description>

<item>
    <title>Извлеч значение из процедуры awk (LSTemp)</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID9/9426.html#5</link>
    <pubDate>Fri, 27 Apr 2012 17:48:09 GMT</pubDate>
    <description>&amp;gt;&#091;оверквотинг удален&#093;&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; END &#123; print &quot;bla&quot; &amp;gt;&amp;gt; &quot;/path/to/text.file&quot;;&#125;&apos; &lt;br&gt;&amp;gt;&amp;gt;&amp;gt; на старых unix system-v, типа sco, работало.&lt;br&gt;&amp;gt;&amp;gt; Точно.... помимо существующей, создать ещё процедуру и в ней отправить значение из &lt;br&gt;&amp;gt;&amp;gt; существующей переменной.&lt;br&gt;&amp;gt;&amp;gt;   END &#123; ............ count;&#125; END &#123;print count &amp;gt; &quot;./filename&quot;;&#125;&apos; .....&lt;br&gt;&amp;gt;  в файл пишет, в переменную не хочет.. Да и как сюда &lt;br&gt;&amp;gt; мия переменной подставить, чтоб эта переменная была доступна после отработки awk? &lt;br&gt;&amp;gt; ... переменные видны только внутри одинарных ковычек Получается, только через временный &lt;br&gt;&amp;gt; файл.&lt;br&gt;&amp;gt; Или я не прав?&lt;br&gt;&lt;br&gt;в принципе - прав. практически все циклы, операции перенаправления ввода, вызов внешних команд выполняются в отдельной оболочке - именно по этому значение переменной и не сохраняется (при выходе из сабшела она просто теряется). однако можно так например:&lt;br&gt;&lt;br&gt;&#091;root&#064;local temp&#093;# cat n.bsh &lt;br&gt;#!/bin/bash&lt;br&gt;&lt;br&gt;# file name&lt;br&gt;n_f=&apos;./n.txt&apos;&lt;br&gt;&lt;br&gt;# exec&lt;br&gt;function n_e()&lt;br&gt;&#123;&lt;br&gt; echo 1 &amp;gt;&amp;gt; $n_f&lt;br&gt; echo 2&lt;br&gt; echo 3 &amp;gt;&amp;gt; $n_f&lt;br&gt;&#125;&lt;br&gt;&lt;br&gt;# print&lt;br&gt;function n_p()&lt;br&gt;&#123;&lt;br&gt; n_e&amp;#1</description>
</item>

<item>
    <title>Извлеч значение из процедуры awk (cat84)</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID9/9426.html#4</link>
    <pubDate>Mon, 09 Apr 2012 11:18:09 GMT</pubDate>
    <description>&#096;expression&#096; ?&lt;br&gt;&lt;br&gt;</description>
</item>

<item>
    <title>Извлеч значение из процедуры awk (oleg_skat)</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID9/9426.html#3</link>
    <pubDate>Sat, 07 Apr 2012 15:06:07 GMT</pubDate>
    <description>&amp;gt;&amp;gt; Попробуй так...&lt;br&gt;&amp;gt;&amp;gt; END &#123; print &quot;bla&quot; &amp;gt;&amp;gt; &quot;/path/to/text.file&quot;;&#125;&apos; &lt;br&gt;&amp;gt;&amp;gt; на старых unix system-v, типа sco, работало.&lt;br&gt;&amp;gt; Точно.... помимо существующей, создать ещё процедуру и в ней отправить значение из &lt;br&gt;&amp;gt; существующей переменной.&lt;br&gt;&amp;gt;   END &#123; ............ count;&#125; END &#123;print count &amp;gt; &quot;./filename&quot;;&#125;&apos; ..... &lt;br&gt;&lt;br&gt; в файл пишет, в переменную не хочет.. Да и как сюда мия переменной подставить, чтоб эта переменная была доступна после отработки awk? ... переменные видны только внутри одинарных ковычек Получается, только через временный файл. &lt;br&gt;Или я не прав? &lt;br&gt;&lt;br&gt;</description>
</item>

<item>
    <title>Извлеч значение из процедуры awk (oleg_skat)</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID9/9426.html#2</link>
    <pubDate>Sat, 07 Apr 2012 13:26:06 GMT</pubDate>
    <description>&amp;gt; Попробуй так...&lt;br&gt;&amp;gt; END &#123; print &quot;bla&quot; &amp;gt;&amp;gt; &quot;/path/to/text.file&quot;;&#125;&apos; &lt;br&gt;&amp;gt; на старых unix system-v, типа sco, работало.&lt;br&gt;&lt;br&gt;Точно.... помимо существующей, создать ещё процедуру и в ней отправить значение из существующей переменной.&lt;br&gt;  END &#123; ............ count;&#125; END &#123;print count &amp;gt; &quot;./filename&quot;;&#125;&apos; ..... &lt;br&gt;Отлично работает и на FreeBSD8.2&lt;br&gt;&lt;br&gt;СПАСИБО!&lt;br&gt;&lt;br&gt;&lt;br&gt;</description>
</item>

<item>
    <title>Извлеч значение из процедуры awk (cat84)</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID9/9426.html#1</link>
    <pubDate>Sat, 07 Apr 2012 12:38:18 GMT</pubDate>
    <description>Попробуй так... &lt;br&gt;END &#123; print &quot;bla&quot; &amp;gt;&amp;gt; &quot;/path/to/text.file&quot;;&#125;&apos; &lt;br&gt;на старых unix system-v, типа sco, работало.&lt;br&gt;</description>
</item>

</channel>
</rss>
