用Javascript调用cmd并执行命令

JavaScript014

用Javascript调用cmd并执行命令,第1张

建立test.bat文件,存于D:根目录下,作用是将*txt文件拷贝到d:/test目录下。

md test

copy d:/*.txt d:/test

pause

创建WScript.Shell对象,由该对象直接运行test.dat文件。

var objShell

objShell=new ActiveXObject("WScript.Shell")

var iReturnCode=objShell.Run("c:/test.bat",0,true)

创建WScript.Shell对象,由该对象直接运行CMD命令。

var objShell

var objShell= new ActiveXObject("WScript.Shell")

var iReturnCode=objShell.Run("cmd.exe /c md test",0,true)

iReturnCode=objShell.Run("cmd.exe /c copy d:/*.text mytest",0,true)

在js中调用php的代码:

<SCRIPT Language = "JavaScript">

function func()

{ if(confirm("Are you OK with this?"))

{ this.location = "ok.php?action=ok"}

else

{ this.location = "ok.php?action=cancel"} }

</SCRIPT>

<html>

<head>

</head>

<body>

<a href="#" href="#" onClick="javascript:func()">Please Click</a>

</body>

</html>

if($_GET["action"]=="ok") 

{ echo "I'm OK!"}

else

{echo "I'm not OK!"}

RUN函数本身带三个参数,第一个参数就是你要运行的程序 第二个参数就是用来控制运行窗口模式 有0-9模式 其中0是隐藏后台运行,6是最小化运行 。Run的第三个参数将允许我们防止相关程序以并发方式运行。您可将第三个参数赋值为True,以便指示脚本停留在使用Run方法的代码行并保持等待状态,直到已被激活的程序运行完毕。

其中第二个参数分别代表:

0 隐藏一个窗口并激活另一个窗口。 1 激活并显示窗口。如果窗口处于最小化或最大化状态,则系统将其还原到原始大小和位置。第一次显示该窗口时,应用程序应指定此标志。 2 激活窗口并将其显示为最小化窗口。 3 激活窗口并将其显示为最大化窗口。 4 按最近的窗口大小和位置显示窗口。活动窗口保持活动状态。 5 激活窗口并按当前的大小和位置显示它。 6 最小化指定的窗口,并按照 Z 顺序激活下一个顶部窗口。 7 将窗口显示为最小化窗口。活动窗口保持活动状态。 8 将窗口显示为当前状态。活动窗口保持活动状态。 9 激活并显示窗口。如果窗口处于最小化或最大化状态,则系统将其还原到原始大小和位置。还原最小化窗口时,应用程序应指定此标志。 10 根据启动应用程序的程序状态来设置显示状态

1、浏览器控制台运行

JavaScript不同于java语言或者c语言,需要环境、需要编译再运行,js在被制造出来时,就是为浏览器而生,可以直接在浏览器里运行,这里以谷歌浏览器为例,鼠标右键检查或者快捷键F12即可看到控制台可以理解为操作系统里的命令行模式

在这里就可以直接输入我们想输入的js代码,回车即可查看代码执行结果

在浏览器输入js代码的好处显而易见:方便,打开浏览器就能输代码查看执行结果,我平常也多用浏览器控制台学学原生js的原理或者看看正则是不是匹配,因为浏览器控制台的缺点太多了:操作不便,没法文件操作只能命令行,找错困难,大多数时候的js是有依赖的,控制台不方便整依赖,所以,一般控制台也就执行执行简单原生的js

2、写在HTML里运行

实际上,我们肯定不想用命令行的方式,当然是用一个顺手的IDE写代码。

这种方式,就是我大学时候,老师们教的传统方式了。

学HTML的时候,会教到标签,有一个标签不同于别的花里胡哨的标签,这个标签很牛,叫做<script>脚本标签,用来嵌入或者引用可执行脚本,这里解释一下嵌入和引用。嵌入呢,就是把脚本写在标签里边儿,引用呢,就是把脚本写好,然后用标签引入这个脚本的路径

这是主流的写法也是主流的教法,嵌入的写法就是这样:

引用的写法是这样:

查看执行结果的话,点击IDE边上的浏览器图标或者右键run这个html页面,等浏览器弹出来,右键检查就能看到控制台输出的值了

3、直接运行js

实际上上面第二种方法已经很靠谱很普及了,可还是用起来不舒服,每回都要写一个HTML,有的甚至还要再写一个js,那能不能像运行html一样,直接右键运行js呢?

当然是可以的!用node!以下是我花了一个小时才整成的历程!

1、由于我是新的电脑,我装了个nodejs,安装包安装完后,直接命令行执行node命令,即可以直接运行js代码

这样方式还是很蠢,和浏览器没什么区别

2、我用IDE些好的js文件,然后用node单独执行

看上去是好一点了,可以单独执行文件了,但是这样还是很蠢,每回打开cmd还要找到js的路径

3、插件(我这里用的IDEA)