Sådan automatiseres Telnet-kommandoer ved hjælp af VB-script

  • Gabriel Brooks
  • 0
  • 1407
  • 296
Reklame

Skrivning af batchjob (.bat Sådan opretter du en batch-fil) i fem enkle trin Sådan opretter du en batch-fil i fem enkle trin Denne artikel dækker, hvordan du opretter en batchfil ved hjælp af fem enkle trin til Windows-operativsystemet .) og for nylig Windows-scripts 3 Fantastiske ting, du kan gøre med Windows-scripting 3 Fantastiske ting, du kan gøre med Windows-scripting Uanset om du arbejder inden for it-området, som webdesigner, eller hvis du bare er studerende eller almindelig kontorarbejder, Windows Scripting har noget at tilbyde dig. Naturligvis gør Applescript også,… (.wsf) er en aktivitet, der virkelig udgør hovedparten af, hvordan det store flertal af netværks- og systemadministratorer gør deres job hurtigere og forenkler, hvad der ellers ville være tidskrævende, komplekse opgaver. Ved hjælp af batchjob kan du automatisere installation og afinstallation af applikationer, foretage en opgørelse over software og OS-indstillinger for alle pc'er på dit netværk og en række andre forespørgsler og job. Der er dog visse opgaver, der undertiden gennemgår flere lag med godkendelse, såsom telnet.

Mange netværksadministratorer er nødt til at telnet i netværkskontakter for at forespørge eller opsætte porte, overvåge sundheden for systemer eller endda genstarte netværksenheder, der accepterer kommandoer via telnet. Ville det ikke være sødt, hvis du kunne automatisere telnet-job, ligesom du ville scriptere regelmæssige batchjob?

Sandheden er, at hvis du er vant til at bruge VB-script til at oprette dine Windows-scripts (eller endda hvis du ikke er det), giver VB-scripts en meget nyttig funktion, hvor du kan etablere Windows Shell-scriptet som et objekt og derefter udstede det “objekt” omhyggeligt tidsbestemte kommandoer. I det væsentlige er det nøjagtigt som om du sidder ved et kommandovindue og skriver kommandoer. Den eneste forskel er, at dit Windows-script sender vinduet kommandoer til dig.

Automatiser dit Telnet-job

Der er dybest set to dele til denne opgave. Du skal etablere sekvensen af ​​kommandoer, du vil gennemgå under den typiske telnet-session.

Her er hvad jeg vil gøre. Jeg har 5 enheder i hele netværket, der kan genstartes via telnet ved at udstede 4 enkle kommandoer. Jeg skal først telnet til det ved hjælp af IP-adressen og en bestemt port. Dernæst vises en menu, og jeg skal først trykke på enter.

Efter at jeg har slået enter under denne telnet-session, forventer den næste menu et numerisk svar, efterfulgt af Enter.

Lyder lidt umuligt for et scriptjob, ikke sandt? Nå, undervurder aldrig kraften i Visual Basic.

Nu er der andre metoder til at gøre dette. Bare se Abhigyan's artikel om Tst10.exe for at se, hvordan nogle mennesker kan lide at bruge Tst-scriptingmetoden til at automatisere telnet-sessioner. Desværre vil du også se, at det kan være lidt kompliceret for nogen, der ikke er vant til at skrive mange manuskripter. Tcl er også et andet lignende scriptingsprog, som programmerere har brugt i årevis til den samme opgave.

Jeg vil dog vise dig, hvordan en VB-scriptfil vil udføre de samme opgaver i en brøkdel af tiden og bruge et script, der er monumentalt lettere at forstå.

Så her er hvad vi skal gøre. Jeg vil opdele scriptet i sektioner. Læg alle disse i en tekstfil, der hedder noget lignende Autotelnet.wsf, dobbeltklik, og det kører.

Først - etabler telnet-sessionen:

Option eksplicit
Ved fejl Genoptag næste
Dim WshShell
sæt WshShell = CreateObject ("WScript.Shell")
WshShell.run "cmd.exe"
WScript.Sleep 1000
'Send kommandoer til vinduet efter behov - IP og kommandoer skal tilpasses
'Trin 1 - Telnet til ekstern IP'
WshShell.SendKeys "telnet xx.xx.xx.73 9999"
WshShell.SendKeys ("Enter")
WScript.Sleep 1000

Kodeafsnittet ovenfor åbner automatisk et kommandovindue og derefter telnet til enheden på den specifikke port, du har brug for at oprette forbindelse. Erstatte “x'er” med din egen IP.

Søvnkommandoen venter længe på, at enheden reagerer og beder dit script om den næste kommando. Sørg for, at denne ventetid er lang nok til, at denne handling finder sted.

For det andet skal du sende hver kommando, en ad gangen, og give nok ventetid mellem dem til, at telnet-sessionen kan svare.

'Trin 2 - Udsted kommandoer med pauser'
WshShell.SendKeys ("Enter")
WScript.Sleep 1000
WshShell.SendKeys "5"
WshShell.SendKeys ("Enter")
WScript.Sleep 1000

I dette eksempel har jeg udstedt de to kommandoer, som jeg bemærkede ovenfor. Først har jeg scriptet sendt “Gå ind” kommando, vent et øjeblik, og send derefter en “5” og tryk på “Gå ind” igen. Denne korte række handlinger vil udføre nøjagtigt, som om du sad foran telnet-kommandovinduet og gjorde dem selv. Du skal bare tilpasse dette script for at udføre de nøjagtige svar, som din telnet-session kræver.

Til sidst, glem ikke at lukke kommandovinduet og afslutte scriptet.

Trin 3 - Gå ud af kommandovinduet
WshShell.SendKeys "exit"
WshShell.SendKeys ("Enter")
WScript.Quit 

Det er alt, hvad der er at automatisere telnet - tre lette trin inde i et meget ukompliceret script. Bare tag de tre sektioner ovenfor, og tilpas dem efter dit hjertes ønske. Du automatiserer alle dine supportopgaver til at administrere netværkskontakter, tidsur eller andre fjernsystemer, der kommunikerer via telnet.

Hvis du har gentagne opgaver, som du ofte skal udføre, skal du gøre dit liv meget enklere ved at oprette automatiserede Windows-scripts, der gør disse opgaver for dig. Du vil være mere produktiv, og din chef vil blive virkelig imponeret!

Har du andre ideer til seje opgaver, du kan automatisere ved hjælp af denne slags Windows-script? Hvordan har du automatiseret dine egne telnetopgaver? Del dine tanker og indsigt i kommentarfeltet nedenfor.

Billedkredit: Shutterstock




Endnu ingen kommentarer

Om moderne teknologi, enkel og overkommelig.
Din guide i en verden af moderne teknologi. Lær hvordan du bruger de teknologier og gadgets, der omgiver os hver dag, og lær, hvordan du finder interessante ting på Internettet.