Sendkeys в vbscript усекает ключи, передаваемые в терминале putty - PullRequest
0 голосов
/ 25 апреля 2018

Я написал vbscript для автоматизации команд замазки с помощью plink.

При отправке команд linux с помощью метода sendkeys vbscript он случайным образом обрезает символы при передаче на терминал putty.

   Set WshShell = WScript.CreateObject("WScript.Shell")

   WshShell.Run "plink username@hostname -pw password* "

   WScript.Sleep 100

   WshShell.SendKeys "cd abcd",True 'In Putty only cd ab is displayed

   WScript.Sleep 100

   WshShell.SendKeys "{ENTER}",True

Что может быть альтернативой этому? В терминале Putty sendkeys отображает только cd ab

1 Ответ

0 голосов
/ 25 апреля 2018

SendKeys - последняя попытка автоматизировать «приложения, не имеющие интерфейса автоматизации».Он имитирует нажатие клавиш на клавиатуре и легко ненадежен, если приложение не ожидает нажатия клавиш так быстро, если фокус меняется с ожидаемого уровня или действительно, если происходит что-то странное.

Видениепоскольку цель plink должна использоваться сценариями в автоматическом режиме, создается впечатление, что для всего, что вы на самом деле пытаетесь сделать, вы должны пытаться сделать это трудным путем.Просто используйте plink для , запустите команду, которую вы хотите для непосредственного запуска, и не пытайтесь использовать SendKeys для ее автоматизации.

...