Я пытаюсь написать скрипт в vb, чтобы открыть сеанс telnet для удаленного устройства Windows CE7 с ноутбука Windows 7, чтобы получить вывод из ipconfig /all в текстовый файл, а затем добавить содержимое этого текстового файла в журнал , До сих пор я мог сделать это только запустив скрипт vb, а затем запустив скрипт ftp для извлечения журнала с устройства. Я не понял, как скопировать содержимое этого файла в основной файл журнала.

Это мой скрипт vb:

Set OBJECT = CreateObject("WScript.Shell")
OBJECT.run"cmd"
WScript.Sleep 800

OBJECT.SendKeys"telnet ipaddress" OBJECT.SendKeys("{Enter}") WScript.Sleep 800

OBJECT.SendKeys"admin" OBJECT.SendKeys("{Enter}") WScript.Sleep 800

OBJECT.SendKeys"admin" OBJECT.SendKeys("{Enter}") WScript.Sleep 800

OBJECT.SendKeys"ipconfig /all >> somelog.log" OBJECT.SendKeys("{Enter}") WScript.Sleep 800

OBJECT.SendKeys"^]" WScript.Sleep 800 OBJECT.SendKeys"quit" OBJECT.SendKeys("{Enter}") WScript.Sleep 800 OBJECT.SendKeys"exit" OBJECT.SendKeys("{Enter}")

Затем я запускаю командный файл, который запускает файл ftp:


open 172.16.24.45
admin
admin
get "sendkeys.log"
close

Я хотел бы автоматизировать весь этот процесс и сделать это с 1 файлом. Любая помощь с благодарностью.

1 ответ1

0

Следующие команды должны делать то, что вы просите. Скопируйте и сохраните их в файл .bat или .cmd. Обратите внимание, что любые имена файлов, заключенные в <> , должны быть заменены фактическими именами файлов из вашей системы, не вводите < или > в сценарий, иначе произойдет нежелательный результат.

cscript.exe //nologo <vbsendkeys_script.vbs>
call <ftpget.bat>
copy <masterlog.log> + sendkey.log mastertemp.log
del <masterlog.log>
ren mastertemp.log <masterlog.log>

Cscript.exe является хостом сценария командной строки для Windows. Он запустит указанные вами .vbs и выведет результаты (если таковые имеются) в командной строке.

Call используется для запуска другого пакетного файла, а затем возврата выполнения к исходному (вызывающему) пакетному файлу. Без использования call оба пакетных файла будут завершены после запуска второго.

Остальные команды копируют sendkey.log в конец основного журнала и выполняют некоторые переименования и очистки.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .