Как автоматизировать PuTTy из Excel?

64
7

Я пытаюсь автоматизировать следующую последовательность шагов в puTTy через VBA из Excel

Вход в шпаклевку выполнить команду скопируйте результат из шпатлевки и вставьте его в excel.

До сих пор я написал код для входа на сервер, инициировав приложение putty (см. Приведенный ниже код)

Sub Putty()
Dim TaskID As Long
TaskID = Shell("path/putty.exe servername", vbNormalFocus)
AppActivate TaskID, True
SendKeys "username"
SendKeys "{ENTER}"
SendKeys "password"
SendKeys "{ENTER}"
'---- Here i need to execute a command for eg: "ls -l" and copy the result into Excel
End Sub

Не могли бы вы дать некоторое представление о том, как выполнить команду после этого шага и скопировать результат из PuTTy в Excel?

спросил(а) 2021-01-19T15:46:33+03:00 6 месяцев назад
1
Решение
126

Я бы использовал Plink вместо основного приложения Putty. Plink - это замазка, предназначенная для командной строки.

Посмотрите на перенаправление оболочки, такие ответы здесь.


Основная идея заключается в том, что вы можете создать объект WScript.Shell, запустить plink.exe, используя его, а затем записать в StdIn и прочитать из StdOut. StdIn похож на ввод текста в консольное окно, и StdOut - это то, что отображается пользователю в указанном окне консоли.

ответил(а) 2021-01-19T15:46:33+03:00 6 месяцев назад
45

Вы можете указать файл журнала в putty и посмотреть, что файл журнала по ходу дела. Это не лучший способ сделать это, но без прав администратора это один из способов сделать это.

ответил(а) 2021-01-19T15:46:33+03:00 6 месяцев назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема