Cmd HTA WScript.shell。运行以存储到文件,是否不工作?

Cmd HTA WScript.shell。运行以存储到文件,是否不工作?,cmd,jscript,hta,Cmd,Jscript,Hta,我不确定我做错了什么 我想从HTA运行一个命令行工具,并将输出捕获到一个文件中,这样我可以在…之后处理它,但它不会写入任何文件 如果我在Windows命令提示符中键入adb devices>c:\adb.txt,它会工作,但是如果我在HTA中使用以下JScript代码,adb程序会运行,我会得到一个返回代码0,但不会创建输出文件 var oShell = new ActiveXObject("WScript.Shell"); var runcmd = "adb devices > c:\\

我不确定我做错了什么

我想从HTA运行一个命令行工具,并将输出捕获到一个文件中,这样我可以在…之后处理它,但它不会写入任何文件

如果我在Windows命令提示符中键入
adb devices>c:\adb.txt
,它会工作,但是如果我在HTA中使用以下JScript代码,adb程序会运行,我会得到一个返回代码0,但不会创建输出文件

var oShell = new ActiveXObject("WScript.Shell");
var runcmd = "adb devices > c:\\adb.txt";
var oExec = oShell.Run(runcmd, 0, true);

我的脚本有什么问题吗?

不要使用
.Run
方法,而是使用
.Exec
方法直接读写输入/输出/错误流,而无需存储到文件中。使用.Run方法的IIRC您需要运行cmd.exe才能进行重定向。代码的第二行应该是这样的:
var runcmd=“cmd/c adb devices>c:\\adb.txt”
不要使用
.Run
方法,而是使用
.Exec
方法直接读写输入/输出/错误流,而无需存储到文件中。使用.Run方法的IIRC您需要运行cmd.exe才能进行重定向。代码的第二行应该是这样的:
var runcmd=“cmd/c adb devices>c:\\adb.txt”