Forum Webscript.Ru

Общие => ОС и системное ПО => Тема начата: Yukko от 02 Июня 2005, 16:01:24

Название: doskey+telnet
Отправлено: Yukko от 02 Июня 2005, 16:01:24
Уважаемые товарищи! Не сочтите за мазохизм...

У меня есть девайс, который управляется через телнет. На этом девайсе нет планировщика. Мне нужно каждые два дня утром в 6.30 (когда нормальные люди, и я в том числе, еще спят) заходить по телнету на этот девайс и выполнять на нем пару-тройку тупых команд, после чего перегружать этот девайс последней командой. Есть в распоряжении ХР винда, с которой разрешен вход на этот девайс. Задача:
запустить телнет:
telnet bla.bla.bla.bla
в окно команды что-то передать, например:
line stop

потом еще что-то передать:
reset

потом опять передать подтверждение перезагрузки:
y

Я долго мучался с перенаправлением ввода-вывода, но перед стартом telnet\'a я не могу писать в буфер клавиатуры. Есть программа doskey http://www.microsoft.com/technet/prodtechnol/windowsserver2003/ru/library/ServerHelp/f7f45601-5178-48c6-9219-51bd6f7abd3f.mspx , которая позволяет создавать макросы для любой из программ, но чтобы выполнить макрос в том же телнете надо сделать вот так:
telnet bla.bla.bla.bla
а в окно команды передать имя макроса:
reconfigurereset

т.е. проблема остается. Чтобы не дергать девайс тренируюсь на кошках: на вебсервере создал файл, который пишет обращения к нему в БД, а на
telnet webserver 80
пытаюсь передать:
GET /path_to_script/script.php HTTP/1.1

Помогите побороть проблему стандартными средствами...
Название: doskey+telnet
Отправлено: ondr от 02 Июня 2005, 17:10:43
хочешь скриптик на perl?
Название: doskey+telnet
Отправлено: Yukko от 02 Июня 2005, 17:22:54
perl не хотелось бы... там иногда машины меняются, т.е. каждый раз ставить его прийдется. Но давай, если ничего не получится, то будем извращаться дальше.
Название: doskey+telnet
Отправлено: ondr от 02 Июня 2005, 17:26:22
напиши пример общения по telnet
Название: doskey+telnet
Отправлено: Yukko от 02 Июня 2005, 17:32:43
дык, написал же вверху... я так понимаю, что если всю посылку данных функцией оформить, то можно делать так:
send_data("line stop");
send_data("reset");
send_data("y");

ну естественно там надо пройти авторизацию будет вначале.
Название: doskey+telnet
Отправлено: ThE0ReTiC от 03 Июня 2005, 11:48:19
Цитировать
Yukko:
ну естественно там надо пройти авторизацию будет вначале

telnet -a - текущий пользователь
telnet -l
Название: doskey+telnet
Отправлено: Yukko от 03 Июня 2005, 12:45:01
ThE0ReTiC
это мы знаем, а дальше??? :)
Название: doskey+telnet
Отправлено: ThE0ReTiC от 03 Июня 2005, 17:41:50
Yukko
telnet -a < command_file
не помогает?
[off]
мне просто сейчас проэспериментировать негде
[/off]
Название: doskey+telnet
Отправлено: Yukko от 03 Июня 2005, 18:22:21
уважаемый, извини у меня ХР:

telnet [-a][-e escape char][-f log file][-l user][-t term][host [port]]
 -a      Attempt automatic logon. Same as -l option except uses
         the currently logged on user\'s name.
 -e      Escape character to enter telnet client prompt.
 -f      File name for client side logging
 -l      Specifies the user name to log in with on the remote system.
         Requires that the remote system support the TELNET ENVIRON option.
 -t      Specifies terminal type.
         Supported term types are vt100, vt52, ansi and vtnt only.
 host    Specifies the hostname or IP address of the remote computer
         to connect to.
 port    Specifies a port number or service name.

C:\\Documents and Settings\\Administrator>


т.е. это не то что притензия, но это просто такой вот недоумение, где ты такую командную строку взял???
Название: doskey+telnet
Отправлено: ThE0ReTiC от 04 Июня 2005, 20:26:18
Windows XP SP 2
=)
ссылку на мануал виндового шела дать, или F1 нажмешь? ;)
Название: doskey+telnet
Отправлено: Yukko от 04 Июня 2005, 22:58:27
Цитировать
ThE0ReTiC:
ссылку на мануал виндового шела дать

либо я туплю, либо вот такое:
Цитировать
ThE0ReTiC:
telnet -a < command_file

не помогает :( я полдня вокруг него с бубном прыгал, хотя могу признать, что вполне мог протупить... уже самому стало сильно интересно...