【问题标题】:How to save time for using plink in VBA如何节省在 VBA 中使用 plink 的时间
【发布时间】:2016-08-04 02:01:43
【问题描述】:

下面我的 VBA 代码显示了有关如何通过 plink 控制我的主机的模板

Set wsh = VBA.CreateObject("WScript.Shell")  
for i = 1 to 1000
   wsh.Run("cmd.exe /c plink -ssh 192.168.100.xx -l root -pw xxxx command", 0, True)
   Sleep 1000
next i

如果我必须每秒通过plink.exe从主机获取信息,则需要执行“wsh.Run(”cmd.exe /c plink -ssh 192.168.100.xx -l root -pw xxxx命令” , 0, True)" 每次都浪费时间打开shell并执行plink.exe然后每轮都关闭它。有没有办法节省时间,这意味着打开shell并执行一次plink.exe并让plink.exe一直监听我的命令直到循环结束?

【问题讨论】:

  • 这个问题/答案 (redirecting input to an executable from Excel VBA) 可能会满足您的需求;它展示了如何通过 WScript.Shell 与可执行文件交互。
  • ...但转念一想,我不清楚您要达到什么目的。您能否展示一个示例,说明您将如何在命令提示符下手动执行您想要的操作?一旦澄清了这一点,就更容易弄清楚如何实现自动化。
  • 我修改了我的问题。

标签: vba plink


【解决方案1】:

您可能想看看 Chip Pearsons 解决方案,Shell and Wait。

http://www.cpearson.com/excel/ShellAndWait.aspx

ShellAndWait 函数调用 Shell,然后等待 Shell 的进程终止。您可以指定函数超时并返回给调用者的时间间隔。 ShellAndWait 的声明如下:

【讨论】:

    猜你喜欢
    • 2016-12-22
    • 2016-04-30
    • 1970-01-01
    • 2017-06-27
    • 1970-01-01
    • 2018-02-07
    • 1970-01-01
    • 2011-01-03
    • 2010-10-19
    相关资源
    最近更新 更多