<?xml version="1.0" encoding="koi8-r"?>
<rss version="0.91">
<channel>
    <title>OpenForum RSS: При запуске скрипта Expect через Web</title>
    <link>https://opennet.ru/openforum/vsluhforumID9/9980.html</link>
    <description>Добрый время суток!&lt;br&gt;&lt;br&gt;Не могу понять в чем проблема. Пытаюсь подтянуть инфу с железки по telnet через скриптик&lt;br&gt;&lt;br&gt;#!/usr/bin/expect -f&lt;br&gt;log_user 1&lt;br&gt;spawn telnet 192.168.1.15&lt;br&gt;expect &quot;Login:&quot; &#123;send &quot;root&#092;r&quot;;&#125;&lt;br&gt;expect &quot;Password:&quot; &#123;send &quot;root&#092;r&quot;&#125;&lt;br&gt;expect &quot;# &quot; &#123;send &quot;exit&#092;r&quot;&#125;&lt;br&gt;expect eof&lt;br&gt;&lt;br&gt;&lt;br&gt;Первый способ (запуск через консоль).&lt;br&gt;Все прекрасно работает, на железку попадаю.&lt;br&gt;&lt;br&gt;Второй способ (через WEB)&lt;br&gt;Необходимо вывести инфу на web страничку. Использую PHP. И в итоге сталкиваюсь с тем, что после ввода Login:root получаю Press any key to continue (Q to quit).&lt;br&gt;&lt;br&gt;На других типах железа такого не происходит.&lt;br&gt;&lt;br&gt;Неужели придется после каждой строчки ввода, обрабатывать это сообщение Press any key to continue (Q to quit).&lt;br&gt;</description>

<item>
    <title>При запуске скрипта Expect через Web (pavlinux)</title>
    <link>https://opennet.ru/openforum/vsluhforumID9/9980.html#10</link>
    <pubDate>Wed, 04 Mar 2015 11:06:04 GMT</pubDate>
    <description>&amp;gt; Возможно из за длительного ожидания.&lt;br&gt;&lt;br&gt;вместо exec() passthru() юзай, но лучше все на пхп&lt;br&gt;</description>
</item>

<item>
    <title>При запуске скрипта Expect через Web (DiJey)</title>
    <link>https://opennet.ru/openforum/vsluhforumID9/9980.html#9</link>
    <pubDate>Wed, 04 Mar 2015 08:14:08 GMT</pubDate>
    <description>Я к стати посмотрел твой expect, измени его параметры проверки password login, как в моем примере, видимо доп пробел присутствует или еще что то, вот и не отрабатывает, строчка твоя выскакивает:&lt;br&gt;Press any key to continue (Q to quit)&lt;br&gt;Возможно из за длительного ожидания.&lt;br&gt;</description>
</item>

<item>
    <title>При запуске скрипта Expect через Web (DiJey)</title>
    <link>https://opennet.ru/openforum/vsluhforumID9/9980.html#8</link>
    <pubDate>Wed, 04 Mar 2015 07:52:57 GMT</pubDate>
    <description>&amp;gt;&#091;оверквотинг удален&#093;&lt;br&gt;&amp;gt; spawn telnet 192.168.1.15 &lt;br&gt;&amp;gt; Trying 192.168.1.15...&lt;br&gt;&amp;gt; Connected to 192.168.1.15.&lt;br&gt;&amp;gt; Escape character is &apos;^&#093;&apos;.&lt;br&gt;&amp;gt; Login to ZXSS-I524 VERSION V1.00.0Z.00.30 &lt;br&gt;&amp;gt; Login:root Press any key to continue (Q to quit) &lt;br&gt;&amp;gt; У меня подозрения, что скрипт реагирует на пользователя запускающий его. Но права &lt;br&gt;&lt;br&gt;Пользователь тут не причем у expect нет такого условия вот он и затыкается, по скольку не знает что дальше делать.&lt;br&gt;&lt;br&gt;&amp;gt; я разрешил по максимум 0777, да и скрипт бы не запускался &lt;br&gt;&amp;gt; если беда была с правами. Не могу понять где собака зарыта. &lt;br&gt;&amp;gt; А обрабатывать каждый раз это сообщение ну совсем не охота )) &lt;br&gt;&lt;br&gt;Что мешает в expect вставить еще одну строчку?&lt;br&gt;Я же даже пример привел, предложили всё на php написать, я понимаю лень, но нельзя же быть настолько ленивым :Р .&lt;br&gt;&lt;br&gt;&lt;br&gt;</description>
</item>

<item>
    <title>При запуске скрипта Expect через Web (pavlinux)</title>
    <link>https://opennet.ru/openforum/vsluhforumID9/9980.html#7</link>
    <pubDate>Tue, 03 Mar 2015 23:39:55 GMT</pubDate>
    <description>&amp;gt; Не могу понять где собака зарыта. &lt;br&gt;&lt;br&gt;stdin у апача в другом месте.&lt;br&gt;&lt;br&gt;&lt;br&gt;А накой ваще expect если есть ПЫХа?  &lt;br&gt;&lt;br&gt;&#091;code&#093;&lt;br&gt;&amp;lt;?php&lt;br&gt;/**&lt;br&gt; * Telnet class&lt;br&gt; *&lt;br&gt; * Used to execute remote commands via telnet connection&lt;br&gt; * Usess sockets functions and fgetc() to process result&lt;br&gt; *&lt;br&gt; * All methods throw Exceptions on error&lt;br&gt; *&lt;br&gt; * Written by Dalibor Andzakovic &amp;lt;dali&#064;swerve.co.nz&amp;gt;&lt;br&gt; * Based on the code originally written by Marc Ennaji and extended by&lt;br&gt; * Matthias Blaser &amp;lt;mb&#064;adfinis.ch&amp;gt;&lt;br&gt; *&lt;br&gt; * Extended by Christian Hammers &amp;lt;chammers&#064;netcologne.de&amp;gt;&lt;br&gt; * Modified by Frederik Sauer &amp;lt;fsa&#064;dwarf.dk&amp;gt;&lt;br&gt; *&lt;br&gt; */&lt;br&gt;class Telnet &#123;&lt;br&gt;private $host;&lt;br&gt;private $port;&lt;br&gt;private $timeout;&lt;br&gt;private $stream_timeout_sec;&lt;br&gt;private $stream_timeout_usec;&lt;br&gt;private $socket  = NULL;&lt;br&gt;private $buffer = NULL;&lt;br&gt;private $prompt;&lt;br&gt;private $errno;&lt;br&gt;private $errstr;&lt;br&gt;private $strip_prompt = TRUE;&lt;br&gt;private $NULL;&lt;br&gt;private $DC1;&lt;br&gt;private $WILL;&lt;br&gt;private $WONT;&lt;br&gt;private $DO;&lt;br&gt;private $DONT;&lt;br&gt;private $IAC;&lt;br&gt;private $global_buffer = &apos;&apos;;&lt;br&gt;c</description>
</item>

<item>
    <title>При запуске скрипта Expect через Web (gpfspam)</title>
    <link>https://opennet.ru/openforum/vsluhforumID9/9980.html#6</link>
    <pubDate>Tue, 03 Mar 2015 20:05:48 GMT</pubDate>
    <description>&amp;gt;&#091;оверквотинг удален&#093;&lt;br&gt;&amp;gt;&amp;gt; Не совсем понял, что ты имел ввиду под &quot;скрипт с expect дописывай&quot;?&lt;br&gt;&amp;gt;&amp;gt; ) &lt;br&gt;&amp;gt; Сообщение: &lt;br&gt;&amp;gt; Press any key to continue (Q to quit).&lt;br&gt;&amp;gt; появляется если при подключении по телнету нет пароля тоесть вместо &lt;br&gt;&amp;gt; login &lt;br&gt;&amp;gt; password &lt;br&gt;&amp;gt; появляется такое сообщение &lt;br&gt;&amp;gt; соответственно что бы отрабатывали твои скрипты, нужно либо на железке установить &lt;br&gt;&amp;gt; что бы при подключении по телнету она запрашивала логин пароль &lt;br&gt;&lt;br&gt;Пароль для telnet установлен. Еще раз обрисую ситуацию. Запускаю скрипт в консоли из под root, получаю выхлоп такой:&lt;br&gt;&lt;br&gt;spawn telnet 192.168.1.15&lt;br&gt;Trying 192.168.1.15...&lt;br&gt;Connected to 192.168.1.15.&lt;br&gt;Escape character is &apos;^&#093;&apos;.&lt;br&gt; &lt;br&gt;Login to ZXSS-I524  VERSION V1.00.0Z.00.30&lt;br&gt;Login:root&lt;br&gt;Password:&lt;br&gt;&lt;br&gt;         ZXSS-I524  VERSION V1.00.0Z.00.30&lt;br&gt;Copyright(c) 2000-2006,  ZTE Corporation. All rights reserved.&lt;br&gt;--------------------------------------------------------------&lt;br&gt;&lt;br&gt;# exit&lt;br&gt;Connection closed by foreign host.&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;Теперь пытаюсь запустить скрипт из WEB, соответственно из п</description>
</item>

<item>
    <title>При запуске скрипта Expect через Web (DiJey)</title>
    <link>https://opennet.ru/openforum/vsluhforumID9/9980.html#5</link>
    <pubDate>Tue, 03 Mar 2015 12:25:27 GMT</pubDate>
    <description>&amp;gt;&amp;gt; похоже железка у тебя без пароля, пароль на ней поставь ;) либо &lt;br&gt;&amp;gt;&amp;gt; скрипт с expect дописывай &lt;br&gt;&amp;gt; Железка по Web запаролина.&lt;br&gt;&amp;gt; Не совсем понял, что ты имел ввиду под &quot;скрипт с expect дописывай&quot;? &lt;br&gt;&amp;gt; ) &lt;br&gt;&lt;br&gt;Сообщение:&lt;br&gt;Press any key to continue (Q to quit).&lt;br&gt;появляется если при подключении по телнету нет пароля тоесть вместо &lt;br&gt;login &lt;br&gt;password &lt;br&gt;появляется такое сообщение&lt;br&gt;соответственно что бы отрабатывали твои скрипты, нужно либо на железке установить&lt;br&gt;что бы при подключении по телнету она запрашивала логин пароль&lt;br&gt;либо доработать скрипт что бы он обрабатывал строку &lt;br&gt;Press any key to continue (Q to quit).&lt;br&gt;&lt;br&gt;Пример скрипта expect использующего условия ниже&lt;br&gt;&lt;br&gt;&lt;br&gt;#!/usr/bin/expect&lt;br&gt;&lt;br&gt;# Скрипт копирует файл или папку на хосты из списка. Параметры передаются скрипту в коммандной строке.&lt;br&gt;# Первым парамером передаем скрипту адрес файла со списков хостов, логинами и паролями формата:&lt;br&gt;# hostname1 username1 passwprd1&lt;br&gt;# hostname1 username1 passwprd1&lt;br&gt;# Вторым парамтром передаем адрес файла или папки на локально</description>
</item>

<item>
    <title>При запуске скрипта Expect через Web (gpfspam)</title>
    <link>https://opennet.ru/openforum/vsluhforumID9/9980.html#4</link>
    <pubDate>Tue, 03 Mar 2015 11:32:09 GMT</pubDate>
    <description>&amp;gt; похоже железка у тебя без пароля, пароль на ней поставь ;) либо &lt;br&gt;&amp;gt; скрипт с expect дописывай &lt;br&gt;&lt;br&gt;Железка по Web запаролина.&lt;br&gt;Не совсем понял, что ты имел ввиду под &quot;скрипт с expect дописывай&quot;? )&lt;br&gt;</description>
</item>

<item>
    <title>При запуске скрипта Expect через Web (DiJey)</title>
    <link>https://opennet.ru/openforum/vsluhforumID9/9980.html#3</link>
    <pubDate>Tue, 03 Mar 2015 09:29:54 GMT</pubDate>
    <description>похоже железка у тебя без пароля, пароль на ней поставь ;) либо скрипт с expect дописывай&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;</description>
</item>

<item>
    <title>При запуске скрипта Expect через Web (gpfspam)</title>
    <link>https://opennet.ru/openforum/vsluhforumID9/9980.html#2</link>
    <pubDate>Mon, 02 Mar 2015 07:14:49 GMT</pubDate>
    <description>&amp;gt;&amp;gt;&#091;оверквотинг удален&#093; &lt;br&gt;&amp;gt; Ну в тексте явно не хватает кода ПХП &lt;br&gt;&lt;br&gt;#!/usr/bin/expect -f&lt;br&gt;set host &#091;lindex $argv 0&#093;&lt;br&gt;set login &#091;lindex $argv 0&#093;&lt;br&gt;set pass &#091;lindex $argv 0&#093;&lt;br&gt;log_user 1&lt;br&gt;spawn telnet $host&lt;br&gt;expect &amp;#171;Login:&amp;#187; &#123;send &amp;#171;$login&#092;r&amp;#187;;&#125;&lt;br&gt;expect &amp;#171;Password:&amp;#187; &#123;send &amp;#171;$pass&#092;r&amp;#187;&#125;&lt;br&gt;expect &amp;#171;# &amp;#187; &#123;send &amp;#171;exit&#092;r&amp;#187;&#125;&lt;br&gt;expect eof&lt;br&gt;&lt;br&gt;&amp;lt;?php&lt;br&gt;function dev($a,$b,$c)&lt;br&gt;&#123;&lt;br&gt;exec (&apos;./script &apos;.$a.&apos; &apos;.$b.&apos; &apos;.$c,$vihlop);&lt;br&gt;return $vihlop;&lt;br&gt;&#125;&lt;br&gt;print_r (dev(&apos;192.168.1.15&apos;,&apos;root&apos;,&apos;root&apos;));&lt;br&gt;?&amp;gt;&lt;br&gt;</description>
</item>

</channel>
</rss>
