<?xml version="1.0" encoding="koi8-r"?>
<rss version="0.91">
<channel>
    <title>OpenForum RSS: Функции в Shell</title>
    <link>https://opennet.dev/openforum/vsluhforumID9/8415.html</link>
    <description>Уважаемые коллеги!&lt;br&gt;&lt;br&gt;Я пишу скрипт, который должен обрабатывать файлы согласно настройкам - перемещать/копировать их между разными источниками. Поскольку часть задач являются типовыми и повторяемыми, я принял решение использовать функции (http://www.opennet.ru/docs/RUS/bash_scripting_guide/c12483.html). Структура скрипта вышла примерно такой - в начале идёт описание нескольких функций, в конце описан вызов их и их комбинаций в зависимости от входных параметров. Однако при запуске я вижу, что все функции начинают последовательно выполняться, параметры на их порядок не влияют. В какую сторону копать? Судя по документации, функции должны работать только после их вызова и уж никак не подряд по тексту скрипта сверху вниз!&lt;br&gt;</description>

<item>
    <title>Функции в Shell (SLario)</title>
    <link>https://opennet.dev/openforum/vsluhforumID9/8415.html#7</link>
    <pubDate>Tue, 01 Sep 2009 06:12:44 GMT</pubDate>
    <description>Хм, это я накосячил, такая конструкция неправильна. Поправил, логика вернулась! Спасибо!&lt;br&gt;&lt;br&gt;</description>
</item>

<item>
    <title>Функции в Shell (gaa)</title>
    <link>https://opennet.dev/openforum/vsluhforumID9/8415.html#6</link>
    <pubDate>Mon, 31 Aug 2009 15:45:01 GMT</pubDate>
    <description>&amp;gt; if &#091; &quot;$SrcType&quot; = FTP &#093; &amp;&amp; &#091; &quot;$TgtType&quot; = SMB &#093; &lt;br&gt;&amp;gt; &lt;br&gt;&amp;gt;    if &#091; &quot;$ActType&quot; = copy &#093; &lt;br&gt;&amp;gt;    ...&lt;br&gt;&amp;gt;    elif &#091; &quot;$ActType&quot; = move &#093; &lt;br&gt;&amp;gt;    then &lt;br&gt;&amp;gt;    ...&lt;br&gt;&amp;gt;    fi &lt;br&gt;&amp;gt; then : &lt;br&gt;&amp;gt; fi &lt;br&gt;&lt;br&gt;Весь код смотреть, а уж тем более запускать лень, но это место мне не&lt;br&gt;нравится. Ты зачем-то вписал вложенный if не в then...fi, а сразу после&lt;br&gt;условий первого. И двоеточие непонятно зачем светится.&lt;br&gt;</description>
</item>

<item>
    <title>Функции в Shell (SLario)</title>
    <link>https://opennet.dev/openforum/vsluhforumID9/8415.html#5</link>
    <pubDate>Mon, 31 Aug 2009 13:04:13 GMT</pubDate>
    <description>При запуске скрипта терминал показывает вывод всех echo с начала скрипта + пытается выполнить операции перемещения/копирования/доступа к FTP.&lt;br&gt;</description>
</item>

<item>
    <title>Функции в Shell (SLario)</title>
    <link>https://opennet.dev/openforum/vsluhforumID9/8415.html#4</link>
    <pubDate>Mon, 31 Aug 2009 12:43:27 GMT</pubDate>
    <description>&amp;gt;&#091;оверквотинг удален&#093;&lt;br&gt;&amp;gt;&amp;gt;между разными источниками. Поскольку часть задач являются типовыми и повторяемыми, я &lt;br&gt;&amp;gt;&amp;gt;принял решение использовать функции (http://www.opennet.ru/docs/RUS/bash_scripting_guide/c12483.html). Структура скрипта вышла примерно такой - &lt;br&gt;&amp;gt;&amp;gt;в начале идёт описание нескольких функций, в конце описан вызов их &lt;br&gt;&amp;gt;&amp;gt;и их комбинаций в зависимости от входных параметров. Однако при запуске &lt;br&gt;&amp;gt;&amp;gt;я вижу, что все функции начинают последовательно выполняться, параметры на их &lt;br&gt;&amp;gt;&amp;gt;порядок не влияют. В какую сторону копать? Судя по документации, функции &lt;br&gt;&amp;gt;&amp;gt;должны работать только после их вызова и уж никак не подряд &lt;br&gt;&amp;gt;&amp;gt;по тексту скрипта сверху вниз! &lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;это к телепатам... &lt;br&gt;&lt;br&gt;Пардон, выложил код в предыдущем ответе.&lt;br&gt;</description>
</item>

<item>
    <title>Функции в Shell (SLario)</title>
    <link>https://opennet.dev/openforum/vsluhforumID9/8415.html#3</link>
    <pubDate>Mon, 31 Aug 2009 12:42:48 GMT</pubDate>
    <description>Код в студию (он довольно длинный, но ничего особенного нет, просто он не работает):&lt;br&gt;&lt;br&gt;Что характерно, если выкинуть всё, что связано с FTP - работает нормально...&lt;br&gt;&lt;br&gt;#!/bin/bash&lt;br&gt;#&lt;br&gt;# (c), 2009, Larionov S.&lt;br&gt;#&lt;br&gt;# Скрипт для перемещения/копирования файлов между источниками разных типов.&lt;br&gt;#&lt;br&gt;# Порядок работы:&lt;br&gt;# 1. Запись параметров в переменные скрипта + проверка значений;&lt;br&gt;# 2. Если п.7 = new, то &#123;формирование списка файлов + учёт списка уже захваченных в обработку файлов, параметр &amp;#8470;8&#125;;&lt;br&gt;# 3. Формирование процедур обработки файлов;&lt;br&gt;# 4. Запуск процедур обработки файлов.&lt;br&gt;#&lt;br&gt;&lt;br&gt;ParameterCheck ()&lt;br&gt;&#123;&lt;br&gt;if &#091; &quot;$SrcType&quot; != SMB &#093; &amp;&amp; &#091; &quot;$SrcType&quot; != FTP &#093;&lt;br&gt;then&lt;br&gt;   echo &quot;Wrong SrcType parameter &#092;&quot;$SrcType&#092;&quot;! It should be equal to FTP or SMB only!&quot;&lt;br&gt;   exit $OTHER&lt;br&gt;fi&lt;br&gt;&lt;br&gt;# и т.д. для всех обязательных параметров&lt;br&gt;&lt;br&gt;echo &quot;Parameters are correct, continue&quot;&lt;br&gt;&#125;&lt;br&gt;&lt;br&gt;# 2.1. Формирование списка файлов. В зависимости от типа источника, методика будет разной!&lt;br&gt;&lt;br&gt;CreateFileList ()&lt;br&gt;&#123;&lt;br&gt;case $SrcType in&lt;br&gt;SMB )&lt;br&gt;   eval &quot;ls</description>
</item>

<item>
    <title>Функции в Shell (Pahanivo)</title>
    <link>https://opennet.dev/openforum/vsluhforumID9/8415.html#2</link>
    <pubDate>Mon, 31 Aug 2009 12:34:13 GMT</pubDate>
    <description>&amp;gt;&#091;оверквотинг удален&#093;&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;Я пишу скрипт, который должен обрабатывать файлы согласно настройкам - перемещать/копировать их &lt;br&gt;&amp;gt;между разными источниками. Поскольку часть задач являются типовыми и повторяемыми, я &lt;br&gt;&amp;gt;принял решение использовать функции (http://www.opennet.ru/docs/RUS/bash_scripting_guide/c12483.html). Структура скрипта вышла примерно такой - &lt;br&gt;&amp;gt;в начале идёт описание нескольких функций, в конце описан вызов их &lt;br&gt;&amp;gt;и их комбинаций в зависимости от входных параметров. Однако при запуске &lt;br&gt;&amp;gt;я вижу, что все функции начинают последовательно выполняться, параметры на их &lt;br&gt;&amp;gt;порядок не влияют. В какую сторону копать? Судя по документации, функции &lt;br&gt;&amp;gt;должны работать только после их вызова и уж никак не подряд &lt;br&gt;&amp;gt;по тексту скрипта сверху вниз! &lt;br&gt;&lt;br&gt;это к телепатам...&lt;br&gt;</description>
</item>

<item>
    <title>Функции в Shell (phpcoder)</title>
    <link>https://opennet.dev/openforum/vsluhforumID9/8415.html#1</link>
    <pubDate>Mon, 31 Aug 2009 11:58:32 GMT</pubDate>
    <description>Покажите код.&lt;br&gt;&lt;br&gt;&lt;br&gt;</description>
</item>

</channel>
</rss>
