VB sciprt +如何将输出从CMD窗口重定向到文件

VB sciprt +如何将输出从CMD窗口重定向到文件

我编写了以下 VB 脚本,以便在 Linux 机器上运行来自 WIN XP 的命令并将输出命令重定向到 out.txt 文件(在 C:\ 下)

我不明白为什么命令窗口的输出没有写入 out.txt 文件。

这条线出了什么问题

      Sh.Run "cmd /k  & CMD >> ""C:\out.txt""" , 1, True

我的完整 VB 脚本:

 'TARGET_HOST  - Linux machine

 Const TARGET_HOST = "18.20.183.99"
 const PATH =  "cat /etc/hosts" 
 const LOGIN = "root"
 const PASS = " dingdong "
 Const PLINKPATH="""C:\SPUTNIK\plink.exe"""

 Set Sh = CreateObject("WScript.Shell")

        CMD = " echo y | " &   PLINKPATH  & " -ssh -pw " & PASS & LOGIN & "@" & " "   &  TARGET_HOST & " " & PATH 


 Sh.Run "cmd /k  & CMD >> ""C:\out.txt""" , 1, True

  Set Sh = Nothing

答案1

现在,您将CMD创建的变量包含在字符串内部,而不是作为变量。

尝试以下方法:

Sh.Run "cmd /k" & CMD & " >> ""C:\out.txt""" , 1, True

相关内容