我正在尝试使用 javascript 运行 bat 文件。我尝试过使用 powershell 但它似乎无法正常工作。这是我尝试过的代码:
var oShell = WScript.CreateObject("WScript.Shell");
oShell.Exec("D:");
oShell.Exec("cd dir");
oShell.Exec("start user.bat");
我也尝试过:
var oShell = WScript.CreateObject("WScript.Shell");
oShell.Exec("start D:\dir\user.bat");
有时它会运行,有时我会收到这些错误“预期的十六进制数字”,“访问被拒绝”。
我真的很困惑。我想做的就是从 javascript 文件执行 bat 文件。
有人知道该怎么做吗?谢谢你!
首先,JavaScript 没有任何操作系统服务。因此,您实际上指的是恰好用 JavaScript 编写的 Windows 脚本宿主 (WSH) 脚本。
Second, start
不是可执行文件,而是内置的命令cmd.exe
.
摆脱了混乱,听起来您想从 WSH 脚本执行 shell 脚本(批处理文件)。最简单的方法是这样的(这有点接近你已经尝试过的方法):
var wshShell = new ActiveXObject("WScript.Shell");
wshShell.Run("D:\\dir\\user.bat");
要创建WshShell
COM 对象引用 (progidWScript.Shell
), 使用new
关键字和ActiveXObject
构造函数。另外,您需要加倍反斜杠(\
) 在 JavaScript 字符串中,因为\
对 JavaScript 字符串中的字符进行转义。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)