
Ist es möglich, mit dem Windows-Telnet-Client eine Reihe von Befehlen in einem Skript auszuführen?
Wenn nicht, gibt es irgendwelche Alternativen?
Antwort1
Vor langer Zeit habe ich einen COM-Server geschrieben, der es mir ermöglichte, Telnet von VBScript aus zu nutzen. Wenn Sie eine Kopie (einschließlich Quellcode) möchten, stelle ich sie gerne irgendwo ins Internet. Ich verwende ihn, um Router aus der Ferne neu zu starten.
Um Ihnen eine Vorstellung davon zu geben, was es tut, hier ein Beispielskript (ohne Fehlerprüfung).
const SVR = "www.microsoft.com"
dim telnet, s, i
set telnet = CreateObject("Rhs.Telnet")
telnet.Startup()
telnet.Connect SVR, 80
telnet.Writeline "GET / HTTP/1.0"
telnet.Writeline "Host: www.microsoft.com"
telnet.Writeline "User-Agent: RhsTelnet"
telnet.Writeline "Accept: */*"
telnet.Writeline ""
do while telnet.Readline(s, 1000)
wscript.echo s
loop
telnet.Disconnect()
telnet.Cleanup()
JR
Link zum COM-Server: hi Lachlan versuchehttp://www.ratsauce.co.uk/RouterCheck.zip
Dies ist der COM-Server und ein Skript zum Neustarten eines Draytek-Routers. Das Skript RouterCheck.wsf prüft, ob es ein paar Testhosts anpingen kann, daher sollten Sie den größten Teil des Codes wahrscheinlich ignorieren. Verwenden Sie einfach die Funktion RebootRouter und ignorieren Sie den Rest. Dies ist das Ende meiner ADSL-Leitung, daher kann der Download etwas langsam sein.
Wenn jemand den Quellcode (Visual C++ 5.0 mit ATL) möchte, kann ich ihn auf SourceForge ablegen.
Antwort2
Ja. Schau dir das anFaden.
Antwort3
Sie könnten Perl installieren und Net::Telnet verwenden, mit dem Sie die empfangenen Daten sowohl senden als auch interpretieren können.
Mit ActivePerl können Sie dies wahrscheinlich am schnellsten in Betrieb nehmen:
http://www.activestate.com/activeperl/
Und Net::Telnet ist hier dokumentiert:
http://search.cpan.org/~jrogers/Net-Telnet-3.03/lib/Net/Telnet.pm
Weitere Fragen zum Codieren mit Net::Telnet gehören wahrscheinlich zu StackOverflow. Sie können sich auch www.perlmonks.org für Beispiele und Tipps ansehen.
Antwort4
Wenn Sie nichts gegen eine kommerzielle Lösung haben, gibt es einen Business-Telnet-Client namensTeSSH, das über eine umfangreiche Skriptsprache verfügt und über die Befehlszeile ausgeführt werden kann. Es unterstützt das Schreiben von Skripten in VBS, Perl und Lua. Es ist mit 34,95 US-Dollar recht günstig. Sie können auch dieTeSSH-Supportforen.