<?xml version="1.0" encoding="koi8-r"?>
<rss version="0.91">
<channel>
    <title>OpenForum RSS: Shell и конвеер</title>
    <link>https://opennet.me/openforum/vsluhforumID9/9539.html</link>
    <description>Подскажите пожалуйста, нужно парсить вывод утилиты smbclient -gNL $ip, находить в выводе сервер samb&#096;ы и его шары, но приходится сначала сливать вывод smbclient в tmp файл (так-как если испоьзовать конвеер переменные за циклом не будут сохраняться из-за subshell&#096;a), чтобы его потом построчно разобрать в теле цикла и передавать результаты в переменные для дальнейших действий в функцию, вопрос заключается в том можно ли убрать tmp файл, используя каким нибудь образом конвеер, так-как ip много, нехочется делать лишнюю нагрузку на файловую систему, да и некрасиво это как мне кажется!?&lt;br&gt;p.s. пишу на shell, a не на bash, поэтому перенаправление в стиле &quot;done &amp;lt; &amp;lt;(чего-то там)&quot; не работает. &lt;br&gt;    while read line&lt;br&gt;    do&lt;br&gt;       object=&#096;echo $line&amp;#124;awk -F&quot;&amp;#124;&quot; &apos;&#123;print $1&#125;&apos;&#096;&lt;br&gt;       case &quot;$object&quot; in&lt;br&gt;          Disk)&lt;br&gt;                tmp=&#096;echo $line&amp;#124;awk -F&quot;&amp;#124;&quot; &apos;&#123;print $2&#125;&apos;&#096;&lt;br&gt;                dsk=&quot;$tmp $dsk&quot;&lt;br&gt;                ;;&lt;br&gt;          IPC)&lt;br&gt;                ipc=&#096;echo $line&amp;#124;awk &apos;&#123;print $3&#125;&apos;&amp;#124;tr</description>

<item>
    <title>Shell и конвеер (mrRadio)</title>
    <link>https://opennet.me/openforum/vsluhforumID9/9539.html#4</link>
    <pubDate>Tue, 11 Sep 2012 21:22:41 GMT</pubDate>
    <description>Спасибо разобрался, совсем забыл про блок!&lt;br&gt;</description>
</item>

<item>
    <title>Shell и конвеер (vle)</title>
    <link>https://opennet.me/openforum/vsluhforumID9/9539.html#3</link>
    <pubDate>Tue, 11 Sep 2012 20:39:15 GMT</pubDate>
    <description>&amp;gt; #!/bin/sh &lt;br&gt;&amp;gt; printf &apos;Всё&#092;nработает&#092;n&apos; &amp;#124; &#123; while read l; do ret=&quot;$ret $l&quot;; done; echo &lt;br&gt;&amp;gt; $ret; &#125; &lt;br&gt;&amp;gt; echo $ret &lt;br&gt;&lt;br&gt;Вопрос задать, конечно, можно, но надо же немного думать и над ответом.&lt;br&gt;Фигурные скобки там, где я их поставил, для чего стоят?&lt;br&gt;</description>
</item>

<item>
    <title>Shell и конвеер (mrRadio)</title>
    <link>https://opennet.me/openforum/vsluhforumID9/9539.html#2</link>
    <pubDate>Tue, 11 Sep 2012 19:52:39 GMT</pubDate>
    <description>&amp;gt; 0 cheusov&amp;gt;printf &apos;Всё&#092;nработает&#092;n&apos; &amp;#124; &#123; while read l; do ret=&quot;$ret $l&quot;; done; &lt;br&gt;&amp;gt; echo $ret; &#125; &lt;br&gt;&amp;gt; Всё работает &lt;br&gt;&amp;gt; 0 0 cheusov&amp;gt; &lt;br&gt;&lt;br&gt;Вопрос в том что если поместить то что вы написали в скрипт, то вне тела цикла while, переменная $ret будет пустой, мне же нужно чтобы переменная была доступна вне цикла, но это невозможно из-за конвеера&lt;br&gt;поробуйте запустить такой вариант и поймете о чем я говорю:&lt;br&gt;&lt;br&gt;#!/bin/sh&lt;br&gt;printf &apos;Всё&#092;nработает&#092;n&apos; &amp;#124; &#123; while read l; do ret=&quot;$ret $l&quot;; done; echo $ret; &#125;&lt;br&gt;echo $ret&lt;br&gt;&lt;br&gt;</description>
</item>

<item>
    <title>Shell и конвеер (vle)</title>
    <link>https://opennet.me/openforum/vsluhforumID9/9539.html#1</link>
    <pubDate>Tue, 11 Sep 2012 16:26:03 GMT</pubDate>
    <description>0 cheusov&amp;gt;printf &apos;Всё&#092;nработает&#092;n&apos; &amp;#124; &#123; while read l; do ret=&quot;$ret $l&quot;; done; echo $ret; &#125;&lt;br&gt;Всё работает&lt;br&gt;0 0 cheusov&amp;gt;&lt;br&gt;</description>
</item>

</channel>
</rss>
