<?xml version="1.0" encoding="koi8-r"?>
<rss version="0.91">
<channel>
    <title>OpenForum RSS: Запуск Скрипта</title>
    <link>https://www.opennet.me/openforum/vsluhforumID9/8421.html</link>
    <description>Сразу извеняюсь если не правильно выражаюсь есть такая проблемка, написал Bash скриптик который раз в 5 минут проверяет DICOM запросы от программы, если нет ответа запускает службу рестарт сервиса  если 3 раза не получается то в перезагрузку CENTOS.&lt;br&gt;&lt;br&gt;Всё прекрасно работает в терминале, но вот я хотел проверить это скрипт загрузить в авто загрузку.&lt;br&gt;как только прописал в rc.local и перезагрузил то система виснет на обработке скрипта и всё думаю из-за того что в скрипте есть петля(((  &lt;br&gt;&lt;br&gt;Но на самом деле мне нужно этот скрипт запускать как службу&lt;br&gt;&lt;br&gt;Можно ли  мне мой скрипт запустить как службу?  &lt;br&gt;&lt;br&gt;Пытался сделать как написано тут &lt;br&gt;http://www.opennet.ru/base/sys/run_services_tips.txt.html но не получается запустить&lt;br&gt;он мне выдает состояние в списках служб &lt;br&gt;env: /etc/init.d/restartd: No such file directory&lt;br&gt;&lt;br&gt;если запустить в терминале &lt;br&gt;&lt;br&gt;bash: /etc/rc.d/init.d/restard: bin/bash^M: плохой итерпретатор: Нет такого файла или каталога&lt;br&gt;&lt;br&gt;Но он то там есть)))&lt;br&gt;&lt;br&gt;&lt;br&gt;#!/bin/sh&lt;br&gt;# chkconfig: - 98 02&lt;br&gt;# descripti</description>

<item>
    <title>Запуск Скрипта (allez)</title>
    <link>https://www.opennet.me/openforum/vsluhforumID9/8421.html#22</link>
    <pubDate>Tue, 08 Sep 2009 07:25:58 GMT</pubDate>
    <description>&amp;gt;&#091;оверквотинг удален&#093;&lt;br&gt;&amp;gt; until &#091;условие&#093;; do &lt;br&gt;&amp;gt;команды &lt;br&gt;&amp;gt;done &lt;br&gt;&amp;gt;done &lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;И вот как только он выходит из второго  перед ним done &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;&lt;br&gt;Для иллюстрации - вот код:&lt;br&gt;&#091;code&#093;let i=0&lt;br&gt;while &#091; $i -lt 3 &#093;&lt;br&gt;do &lt;br&gt;  let j=0&lt;br&gt;  ((i++))&lt;br&gt;  echo &quot;While loop $i&quot;&lt;br&gt;  until &#091; $j -eq 3 &#093;&lt;br&gt;  do &lt;br&gt;    ((j++))&lt;br&gt;    echo &quot;  Until loop $j&quot;&lt;br&gt;  done&lt;br&gt;done&#091;/code&#093;&lt;br&gt;&lt;br&gt;А это - результат его работы:&lt;br&gt;&#091;code&#093;While loop 1&lt;br&gt;  Until loop 1&lt;br&gt;  Until loop 2&lt;br&gt;  Until loop 3&lt;br&gt;While loop 2&lt;br&gt;  Until loop 1&lt;br&gt;  Until loop 2&lt;br&gt;  Until loop 3&lt;br&gt;While loop 3&lt;br&gt;  Until loop 1&lt;br&gt;  Until loop 2&lt;br&gt;  Until loop 3&#091;/code&#093;&lt;br&gt;Как видите, операторы циклов не путают свой &quot;done&quot; с чужим. ;-)&lt;br&gt;</description>
</item>

<item>
    <title>Запуск Скрипта (buboni)</title>
    <link>https://www.opennet.me/openforum/vsluhforumID9/8421.html#21</link>
    <pubDate>Tue, 08 Sep 2009 05:08:41 GMT</pubDate>
    <description>&amp;gt;&#091;оверквотинг удален&#093;&lt;br&gt;&amp;gt;   let the programmer do something useful &lt;br&gt;&amp;gt;   calculate success condition &lt;br&gt;&amp;gt;   if &#091; success condition &#093;; then &lt;br&gt;&amp;gt;       break &lt;br&gt;&amp;gt;   fi &lt;br&gt;&amp;gt;   let COUNTER=COUNTER+1 &lt;br&gt;&amp;gt;done &lt;br&gt;&amp;gt;if &#091; $COUNTER -eq 3 &#093;; then &lt;br&gt;&amp;gt;    kill the programmer &lt;br&gt;&amp;gt;fi &lt;br&gt;&lt;br&gt; Ой сори я разобрался )))  огромное спасибо тебе друг&lt;br&gt;&lt;br&gt;Ну вот беда откуда не ждал&lt;br&gt; допустим я хочу организовать 2 цикла (цикл в цикле)&lt;br&gt;1.цикд&lt;br&gt;while &#091;условие&#093;; do&lt;br&gt;команды&lt;br&gt;&lt;br&gt;2.цикл&lt;br&gt; until &#091;условие&#093;; do&lt;br&gt;команды&lt;br&gt;done&lt;br&gt;done&lt;br&gt;&lt;br&gt;И вот как только он выходит из второго  перед ним done от первого, а он зараза думает что от второго и второй цикл начинается заново а мне нужно чтоб начинался с первого (((&lt;br&gt;как тут быть?&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;</description>
</item>

<item>
    <title>Запуск Скрипта (elvenic)</title>
    <link>https://www.opennet.me/openforum/vsluhforumID9/8421.html#20</link>
    <pubDate>Mon, 07 Sep 2009 18:12:52 GMT</pubDate>
    <description>&amp;gt;&#091;оверквотинг удален&#093;&lt;br&gt;&amp;gt;&amp;gt;    fi &lt;br&gt;&amp;gt;&amp;gt;    let COUNTER=COUNTER+1 &lt;br&gt;&amp;gt;&amp;gt;done &lt;br&gt;&amp;gt;&amp;gt;&lt;br&gt;&amp;gt;&amp;gt;Подробнисти смотри здесь: http://tldp.org/HOWTO/Bash-Prog-Intro-HOWTO.html &lt;br&gt;&amp;gt;&amp;gt;&lt;br&gt;&amp;gt;&amp;gt;а также &apos;man test&apos; &lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;блин постояно крутит цикл даже если условие выхода верно &lt;br&gt;&amp;gt;мррр а есть какие нибудь еще примеры &lt;br&gt;&lt;br&gt;Нет, если SUCCESS становится &quot;true&quot;, условие цикла становится false и скрипт выходит из цикла.&lt;br&gt;&lt;br&gt;Но можно, к примеру, переписать это так:&lt;br&gt;&lt;br&gt;COUNTER=0&lt;br&gt;while &#091;  $COUNTER -lt 3 &#093;; do&lt;br&gt;   let the programmer do something useful&lt;br&gt;   calculate success condition&lt;br&gt;   if &#091; success condition &#093;; then&lt;br&gt;       break&lt;br&gt;   fi&lt;br&gt;   let COUNTER=COUNTER+1&lt;br&gt;done&lt;br&gt;if &#091; $COUNTER -eq 3 &#093;; then&lt;br&gt;    kill the programmer&lt;br&gt;fi&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;</description>
</item>

<item>
    <title>Запуск Скрипта (buboni)</title>
    <link>https://www.opennet.me/openforum/vsluhforumID9/8421.html#19</link>
    <pubDate>Mon, 07 Sep 2009 17:13:09 GMT</pubDate>
    <description>&amp;gt;&#091;оверквотинг удален&#093;&lt;br&gt;&amp;gt;            &lt;br&gt;&amp;gt;SUCCESS=&quot;true&quot; &lt;br&gt;&amp;gt;        fi &lt;br&gt;&amp;gt;    fi &lt;br&gt;&amp;gt;    let COUNTER=COUNTER+1 &lt;br&gt;&amp;gt;done &lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;Подробнисти смотри здесь: http://tldp.org/HOWTO/Bash-Prog-Intro-HOWTO.html &lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;а также &apos;man test&apos; &lt;br&gt;&lt;br&gt;блин постояно крутит цикл даже если условие выхода верно&lt;br&gt;мррр а есть какие нибудь еще примеры&lt;br&gt;&lt;br&gt;</description>
</item>

<item>
    <title>Запуск Скрипта (elvenic)</title>
    <link>https://www.opennet.me/openforum/vsluhforumID9/8421.html#18</link>
    <pubDate>Mon, 07 Sep 2009 15:29:35 GMT</pubDate>
    <description>&amp;gt;&#091;оверквотинг удален&#093;&lt;br&gt;&amp;gt;&amp;gt;&lt;br&gt;&amp;gt;&amp;gt;   while &#091; condition &#093; ; do &lt;br&gt;&amp;gt;&amp;gt;       command &lt;br&gt;&amp;gt;&amp;gt;   done &lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;)))))я уже понял и переписываю скрипт. &lt;br&gt;&amp;gt;вот только застрял на вопросе как реализавать условие: &lt;br&gt;&amp;gt;если после 3 раз не получается, выполнить то то &lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;если сможешь намекни)) заранее спасибо &lt;br&gt;&lt;br&gt;Например:&lt;br&gt;&lt;br&gt;COUNTER=0&lt;br&gt;SUCCESS=&quot;false&quot;&lt;br&gt;while &#091;  $COUNTER -lt 4 -a  $SUCCESS = &quot;false&quot; &#093;; do&lt;br&gt;    if &#091; $COUNTER -ge 3 &#093;; then&lt;br&gt;        kill the programmer&lt;br&gt;    else&lt;br&gt;        let the programmer live for a while and do smething useful&lt;br&gt;        calculate success condition&lt;br&gt;        if &#091; success condition &#093;; then&lt;br&gt;            SUCCESS=&quot;true&quot;&lt;br&gt;        fi &lt;br&gt;    fi&lt;br&gt;    let COUNTER=COUNTER+1 &lt;br&gt;done&lt;br&gt;&lt;br&gt;Подробнисти смотри здесь: http://tldp.org/HOWTO/Bash-Prog-Intro-HOWTO.html&lt;br&gt;&lt;br&gt;а также &apos;man test&apos;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;</description>
</item>

<item>
    <title>Запуск Скрипта (buboni)</title>
    <link>https://www.opennet.me/openforum/vsluhforumID9/8421.html#17</link>
    <pubDate>Mon, 07 Sep 2009 15:16:36 GMT</pubDate>
    <description>&amp;gt;И не только Fi/fi. Если у вас функции называются &quot;prov&quot; и &quot;pin&quot;, &lt;br&gt;&amp;gt;то и их вызовы должны быть &quot;prov&quot; и &quot;pin&quot;, а не &lt;br&gt;&amp;gt;&quot;Prov&quot; и &quot;Pin&quot;. bash это не Basic или Pascal, тут имеет &lt;br&gt;&amp;gt;значение буковки большие или маленькие. &lt;br&gt;&lt;br&gt;Да я уже переделываю весь скрипт так использовать функции в моей задаче нереально (( (а сними проще, они похожи на команду go to)))  )&lt;br&gt;половину исправил вот голову ломаю как сделать условие трех раз.&lt;br&gt;если есть пример покажите плиз.&lt;br&gt;&lt;br&gt;&lt;br&gt; &lt;br&gt;&lt;br&gt;</description>
</item>

<item>
    <title>Запуск Скрипта (buboni)</title>
    <link>https://www.opennet.me/openforum/vsluhforumID9/8421.html#16</link>
    <pubDate>Mon, 07 Sep 2009 15:03:16 GMT</pubDate>
    <description>&amp;gt;&#091;оверквотинг удален&#093;&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;К сожалению, интерпретатор bash не реализует &quot;оптимизацию хвостовой рекурсии&quot; (tail recursion optimization). &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;   while &#091; condition &#093; ; do &lt;br&gt;&amp;gt;       command &lt;br&gt;&amp;gt;   done &lt;br&gt;&lt;br&gt;)))))я уже понял и переписываю скрипт. &lt;br&gt;вот только застрял на вопросе как реализавать условие:&lt;br&gt;если после 3 раз не получается, выполнить то то &lt;br&gt;&lt;br&gt;если сможешь намекни)) заранее спасибо &lt;br&gt;</description>
</item>

<item>
    <title>Запуск Скрипта (elvenic)</title>
    <link>https://www.opennet.me/openforum/vsluhforumID9/8421.html#15</link>
    <pubDate>Mon, 07 Sep 2009 14:56:47 GMT</pubDate>
    <description>И не только Fi/fi. Если у вас функции называются &quot;prov&quot; и &quot;pin&quot;, то и их вызовы должны быть &quot;prov&quot; и &quot;pin&quot;, а не &quot;Prov&quot; и &quot;Pin&quot;. bash это не Basic или Pascal, тут имеет значение буковки большие или маленькие.&lt;br&gt;</description>
</item>

<item>
    <title>Запуск Скрипта (elvenic)</title>
    <link>https://www.opennet.me/openforum/vsluhforumID9/8421.html#14</link>
    <pubDate>Mon, 07 Sep 2009 13:26:43 GMT</pubDate>
    <description>&amp;gt;Народ у меня теперь повис ещё один вопросик  при вызове функций &lt;br&gt;&amp;gt;prov и proverka из следующей через какое-то время стек будет переполнен, &lt;br&gt;&amp;gt;и скрипт подвесит свой экземпляр bash точно, а может, и всю &lt;br&gt;&amp;gt;систему )))  можно ли как нибудь еще организовать переходы не &lt;br&gt;&amp;gt;используя функции? &lt;br&gt;&lt;br&gt;Ха. Посмотрел я еще раз на ваш скрипт повнимательнее - да вы, батенька, круты до неимоверности. Вы программируете в чистом функциональном стиле, который доступен только гуру Хаскеля, Лиспа и Схемы высшей ступени посвящения :)&lt;br&gt;&lt;br&gt;К сожалению, интерпретатор bash не реализует &quot;оптимизацию хвостовой рекурсии&quot; (tail recursion optimization). &lt;br&gt;&lt;br&gt;В этих условиях вам, пожалуй, прийдется спуститься с вершин функционального стиля и снизойти до использования простых циклов:&lt;br&gt;&lt;br&gt;   while &#091; condition &#093; ; do&lt;br&gt;       command&lt;br&gt;   done&lt;br&gt;&lt;br&gt;</description>
</item>

</channel>
</rss>
