Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   [решено] Telnet автовыполнение команд (http://forum.oszone.net/showthread.php?t=136997)

Гамбари 07-04-2009 10:09 1086528

Telnet автовыполнение команд
 
Такой вопрос: можно ли написать батник для подключения к удаленному компьютеру по средствам telnet и сразу же выполнялась какая нибудь команда?
К примеру
telnet 192.168.1.2
taskkill -f -im calc.exe
quit

Petya V4sechkin 07-04-2009 10:42 1086564

Гамбари, у команды Taskkill есть опция /S для выполнения на другом компьютере.
Еще вместо Telnet можно использовать PsExec.

amel27 07-04-2009 11:28 1086600

Гамбари, есть бесплатная утилита автоматизации TelNet - PLINK.EXE
http://forum.oszone.net/showthread.p...nk#post1029803

britvalord 02-04-2010 13:07 1383254

Всем доброго времени суток, проблема такова: написал простой скриптик для входа на dsl модем и его перезагрузки с использованием plink! но дело в том что модем запрашивает пароль как последовательность нажатых символов(то есть при вводе пароля он не появляется на экране), а plink передает ему пароль как строку и модем ее не воспринимает! как это дело можно исправить? Возможно существует какая та альтернатива плинку, которая позволяет посимвольный автоматизирует именно посимвольный ввод!

Petya V4sechkin 02-04-2010 13:14 1383260

britvalord, в этой теме смотрели?

britvalord 02-04-2010 13:27 1383276

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

bazik83 30-05-2010 17:07 1424066

Добрый день. Пробовал через PLink соединиться с компьютером следующим образом:

Код:

plink -telnet -l user 10.XX.XX.XXX < nusr.txt

Содержание nusr.txt:

Код:

password
команда
...
команда
exit


Пароль прокатывает, а все что после, PLink каким то образом умудряется вбивать в открытой консоли между вводом пароля и и ком. строкой. Выглядит это как пустые строки, количество которых равно количеству команд после пароля:
Код:

C:\>plink -telnet -l user 10.XX.XX.XXX  0<nusr.txt
Welcome to Microsoft Telnet Service


password:



*===============================================================
Welcome to Microsoft Telnet Server.
*===============================================================
C:\Documents and Settings\user>

Как добиться ввода комманд?..

Martia 25-04-2013 15:52 2139435

Можно сделать имитацию ввода команд руками. Но надо знать, как долго та или иная команда отрабатывает. Я брал по пол секунды на каждую операцию. Вполне достаточно.

Для этого не нужно никаких сторонних программ. У меня была задача перезагружать модем. Реализовал через vbscript:

Код:

Set WshShell = WScript.CreateObject("WScript.Shell")

WshShell.Run "telnet 192.168.2.1",9
WScript.Sleep 500
WshShell.SendKeys "admin"
WshShell.SendKeys "{ENTER}"
WScript.Sleep 500
WshShell.SendKeys "1234"
WshShell.SendKeys "{ENTER}"
WScript.Sleep 500
WshShell.SendKeys "reboot"
WshShell.SendKeys "{ENTER}"

этот код сохраняется с расширением .vbs и просто запускается

По аналогии можно юзать telnet с любыми устройствами, с любыми командами. Главное правильно указывать задержки.

AMDBulldozer 25-04-2013 16:33 2139461

Цитата:

Цитата Martia
надо знать, как долго та или иная команда отрабатывает. »

Такое решение безусловно нельзя назвать удовлетворительным. Правильный подход подразумевает ожидание вывода подсказки для ввода очередной команды. В Unix это реализуется при помощи утилиты expect. Полагаю, что и для ОС семейства windows должно существовать нечто подобное. Или можно взять версию expect для Windows.


Время: 14:55.

Время: 14:55.
© OSzone.net 2001-