Forum Webscript.Ru
Общие => ОС и системное ПО => Тема начата: 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
Помогите побороть проблему стандартными средствами...
-
хочешь скриптик на perl?
-
perl не хотелось бы... там иногда машины меняются, т.е. каждый раз ставить его прийдется. Но давай, если ничего не получится, то будем извращаться дальше.
-
напиши пример общения по telnet
-
дык, написал же вверху... я так понимаю, что если всю посылку данных функцией оформить, то можно делать так:
send_data("line stop");
send_data("reset");
send_data("y");
ну естественно там надо пройти авторизацию будет вначале.
-
Yukko:
ну естественно там надо пройти авторизацию будет вначале
telnet -a - текущий пользователь
telnet -l
-
ThE0ReTiC
это мы знаем, а дальше??? :)
-
Yukko
telnet -a < command_file
не помогает?
[off]
мне просто сейчас проэспериментировать негде
[/off]
-
уважаемый, извини у меня ХР:
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>
т.е. это не то что притензия, но это просто такой вот недоумение, где ты такую командную строку взял???
-
Windows XP SP 2
=)
ссылку на мануал виндового шела дать, или F1 нажмешь? ;)
-
ThE0ReTiC:
ссылку на мануал виндового шела дать
либо я туплю, либо вот такое:
ThE0ReTiC:
telnet -a < command_file
не помогает :( я полдня вокруг него с бубном прыгал, хотя могу признать, что вполне мог протупить... уже самому стало сильно интересно...