如何从Windows上的命令行运行.js文件?


15

我有一个快捷方式'target' "C:\Users\Public\TestPro\TestPro Automation Framework\taf.js"

我想从批处理文件运行该文件,因此我将"C:\Users\Public\TestPro\TestPro Automation Framework\taf.js"命令行复制到cmd.exe,然后按Enter。没啥事儿。

如何"C:\Users\Public\TestPro\TestPro Automation Framework\taf.js"在Windows7上从命令行运行?

更新

js文件包含

var WshShell = new ActiveXObject("Wscript.Shell");
WshShell.run("java -Dlog.dir=%TEMP% -jar taf-loader.jar", 0, false);
WScript.exit;

我试图同时运行js文件,Wscript.exeCscript.exe按照@Serge的建议运行,但没有任何效果=我通过双击启动的程序尚未启动。也没有错误。

C:\>Cscript.exe "C:\Users\Public\TestPro\TestPro Automation Framework\taf.js"
Microsoft (R) Windows Script Host Version 5.8
Copyright (C) Microsoft Corporation. All rights reserved.


C:\>Wscript.exe "C:\Users\Public\TestPro\TestPro Automation Framework\taf.js"

C:\>

.js文件用JavaScript或JScript写什么语言?
罗伯特

@罗伯特:我不知道。这不是我的剧本。我希望这是一种商业产品,只需单击一下即可快速启动(Windows7)。如果我确定正在运行的内容,则下次不会启动。
Radek

Answers:


14

您有两种选择:

Cscript.exe "C:\Users\Public\TestPro\TestPro Automation Framework\taf.js"

要么

Wscript.exe "C:\Users\Public\TestPro\TestPro Automation Framework\taf.js"

前者启动Windows Scripting Host的命令行版本,而后者启动窗口版本。

此处记录了命令行选项:https : //docs.microsoft.com/zh-cn/windows-server/administration/windows-commands/cscript

此处:https//docs.microsoft.com/zh-cn/windows-server/administration/windows-commands/wscript

在脚本文件中,您应该使用jar文件的完整路径,并可能使用java.exe的完整路径。

或者,要允许java.exe找到tar-loader.jar文件,应将当前目录更改为包含该文件的目录,因此在调用wscriptmake 之前cd "C:\Users\Public\TestPro\TestPro Automation Framework\"

正如您提到的那样,您希望一次即可运行此脚本,您还可以在桌面上创建快捷方式,该快捷方式的命令行设置为Wscript.exe "C:\Users\Public\TestPro\TestPro Automation Framework\taf.js",工作目录设置为。C:\Users\Public\TestPro\TestPro Automation Framework\


我同意Serge的意见,为什么不从命令行java -Dlog.dir=%TEMP% -jar taf-loader.jar或直接运行批处理?为什么采用这种环回方法?(显然,java.exe必须在PATH中。)
Karan 2012年

@Karan&Serge:在我的问题下查看我的评论。这不是我的剧本。我不想修改它。也许我可以使用其中的代码来创建自己的批处理文件或类似的文件。我不想修改任何内容。
Radek

“也许我可以使用其中的代码来创建自己的批处理文件或类似的文件。” -是的,那你怎么办?
卡兰2012年

只是一个而已。我现在不知道该怎么做,我不确定是否会引起麻烦,为什么我不能以这种方式启动该程序,而且不是100%正确。
Radek

@Radek是否两个tar-loader.jar都位于相同的“ C:\ Users \ Public \ TestPro \ TestPro Automation Framework \”目录中?
Serge 2012年

2

如果您可以在控制台窗口中正确运行“ java”,则

1)在您的桌面上创建一个名为“ taf.txt”的文本文件

2)在文本文件中输入“ java -Dlog.dir =%TEMP%-jar taf-loader.jar”,然后保存

3)将文件重命名为“ taf.bat”

做完了

使用脚本宿主启动脚本来启动可启动Java程序的外壳程序的时间太长了。

根据您要实现的目标来考虑它-您希望通过单击图标来启动程序。

批处理文件是在win7上实现该目标的最快方法。

如果您使用的操作系统可以原生启动Javascript脚本而不会引起任何混乱,则这是启动它的好方法,但是该脚本在Windows之外的任何其他软件上均不起作用(除非现在已移植ActiveX-太长了自使用以来的时间)。

资料来源:超过十年的专业Java开发人员


0

Java 1.6附带了jrunscript在Web浏览器之外运行JavaScript的功能。


它不适用于javascript(js)文件:不适用于Java脚本,并且(现在)不包含在JRE中。
下午0zkr下午
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.