reklama
Zápis dávkových úloh (.netopýr Jak vytvořit soubor dávky (BAT) v pěti jednoduchých krocíchTento článek popisuje, jak vytvořit dávkový soubor pomocí pěti jednoduchých kroků pro operační systém Windows. Přečtěte si více ) a nověji Windows skripty 3 úžasné věci, které můžete dělat se skriptováním systému WindowsAť už pracujete v oblasti IT, jako webový designér, nebo pokud jste jen student nebo běžný administrativní pracovník, Windows Scripting vám má co nabídnout. Applescript samozřejmě také ... Přečtěte si více (.wsf) je aktivita, která skutečně tvoří podstatnou část toho, jak velká většina sítí a systémů administrátoři provádějí své úkoly rychleji a zjednodušují to, co by jinak bylo časově náročné a složité úkoly. Pomocí dávkových úloh můžete automatizovat instalaci a odinstalaci aplikací, provádět inventarizaci nastavení softwaru a OS všech počítačů v síti a množství dalších dotazů a úloh. Existují však určité úkoly, které někdy procházejí několika vrstvami ověřování, například telnet.
Mnoho správců sítě se musí připojit k síťovým přepínačům za účelem dotazování nebo nastavení portů, sledování stavu systémů nebo dokonce restartování síťových zařízení, která přijímají příkazy prostřednictvím telnetu. Nebylo by sladké, kdybyste automatizovali telnetové úlohy, jako byste skriptovali pravidelné dávkové úlohy?
Pravda je, že pokud jste zvyklí používat skript VB k vytváření skriptů systému Windows (nebo i když nejste), skripty VB poskytují velmi užitečná funkce, kde můžete vytvořit skript prostředí Windows Shell jako objekt a poté vydat tento „objekt“ pečlivě načasované příkazy. V podstatě je to přesně tak, jako když sedíte v příkazovém okně a zadáváte příkazy. Jediným rozdílem je, že skript systému Windows odesílá okno příkazy za vás.
Automatizujte svou telnetovou úlohu
Tento úkol má v zásadě dvě části. Je třeba stanovit posloupnost příkazů, které chcete projít během typické relace telnetu.
Zde je to, co chci dělat. V síti mám 5 zařízení, která lze vzdáleně restartovat pomocí telnetu vydáním 4 jednoduchých příkazů. Nejprve k tomu musím telnet připojit pomocí IP adresy a specifického portu. Dále se objeví nabídka a já musím nejprve stisknout enter.
Po stisknutí klávesy Enter během této relace telnetu očekává další nabídka číselnou odpověď následovanou klávesou Enter.
Zní to trochu nemožně pro skriptovací úlohu, že? Nikdy nepodceňujte sílu jazyka.
Nyní existují jiné metody, jak toho dosáhnout. Stačí se podívat na článek Abhigyan o Tst10.exe a zjistit, jak někteří lidé rádi automatizují telnetové relace pomocí metody skriptování Tst. Bohužel také uvidíte, že pro někoho, kdo není zvyklý psát mnoho skriptů, může být trochu složitý. Tcl je také dalším podobným skriptovacím jazykem, který programátoři už roky používají pro stejný úkol.
Ukážu vám však, jak soubor skriptu VB provede za zlomek času stejné úkoly a použije skript, který je monumentálně snáze pochopitelný.
Takže tady je to, co uděláme. Rozdělím scénář na sekce. Vložte všechny tyto do textového souboru s názvem něco jako Autotelnet.wsf, dvakrát klikněte a spustí se.
Nejprve - vytvořte relaci telnet:
Explicitní možnost
Při obnovení chyby další
Dim WshShell
set WshShell = CreateObject ("WScript. Shell ")
WshShell.run" cmd.exe "
WScript. Sleep 1000
'Odesílejte příkazy do okna podle potřeby - IP a příkazy je třeba přizpůsobit
' Krok 1 - Telnet ke vzdálené IP '
WshShell. SendKeys "telnet xx.xx.xx.73 9999"
WshShell. SendKeys ("{Enter}")
WScript. Sleep 1000
Část výše uvedeného kódu automaticky otevře příkazové okno a poté telnet k zařízení na jakémkoli konkrétním portu, který potřebujete připojit. Nahraďte „x“ svou vlastní IP.
Příkaz spánku bude čekat dostatečně dlouho, než zařízení odpoví, a vyzve váš skript k dalšímu příkazu. Ujistěte se, že tato čekací doba je dostatečně dlouhá na to, aby k této akci došlo.
Za druhé, musíte poslat každý příkaz, jeden po druhém, poskytuje mezi nimi dostatek čekací doby, než bude telnet relace reagovat.
'Krok 2 - Vydání příkazů s pauzy '
WshShell. SendKeys ("{Enter}")
WScript. Sleep 1000
WshShell. SendKeys "5"
WshShell. SendKeys ("{Enter}")
WScript. Sleep 1000
V tomto příkladu jsem vydal dva příkazy, které jsem si poznamenal výše. Nejprve nechám skript poslat příkaz „Enter“, chvíli počkat, poté odeslat „5“ a znovu stisknout „Enter“. Tato krátká řada akcí bude fungovat přesně tak, jako byste seděli před příkazovým oknem telnetu a dělali je sami. Tento skript budete muset pouze přizpůsobit, abyste mohli provádět přesné odpovědi, které vaše relace telnetu odpovídá vyžaduje.
Nakonec nezapomeňte zavřít příkazové okno a skript ukončit.
'Krok 3 - Ukončete příkaz Okno
WshShell. SendKeys "exit"
WshShell. SendKeys ("{Enter}")
WScript. Ukončete
To vše je k automatizaci telnetu - tři jednoduché kroky uvnitř velmi nekomplikovaného skriptu. Prostě si vezměte tři výše uvedené části a přizpůsobte je podle přání svého srdce. Automatizujete všechny své podpůrné úkoly za účelem správy síťových přepínačů, časových hodin nebo jiných vzdálených systémů, které komunikují prostřednictvím telnetu.
Pokud máte opakující se úkoly, které musíte často dělat, zjednodušte si svůj život vytvořením automatizovaných skriptů systému Windows, které tyto úkoly provedou za vás. Budete produktivnější a váš šéf bude opravdu ohromen!
Máte nějaké další nápady na skvělé úkoly, které byste mohli automatizovat pomocí tohoto druhu skriptu Windows? Jak jste automatizovali své vlastní telnetové úkoly? Sdílejte své myšlenky a postřehy v sekci komentářů níže.
Obrázek Kredit: Shutterstock
Ryan má bakalářský titul z elektrotechniky. Pracoval 13 let v automatizační technice, 5 let v IT a nyní je Apps Engineer. Bývalý šéfredaktor MakeUseOf, vystoupil na národních konferencích o vizualizaci dat a vystupoval v národních televizích a rádiích.