【问题标题】:Run cmd.exe with specified parametrs from Javascript使用 Javascript 中的指定参数运行 cmd.exe
【发布时间】:2012-04-30 05:08:26
【问题描述】:

科尔斯,我写了一个脚本,应该:

  1. 将文件从 C:\PR\DataFiles\Input\CL_CH5\"+k+"\ext_028042012.dat 复制到 C:\PR\DataFiles\Input\ext_028042012.dat - 工作正常

  2. 使用指定的命令行运行 cmd.exe (p.3)

  3. 运行 cmd.exe 后,脚本应该转到 c: 磁盘,然后将目录更改为 c:/pr,然后在 cmd 行中写入 «process.bat c:\pr ext_028042012.dat auto» 并按 Enter .

代码是

 var fso = new ActiveXObject("Scripting.FileSystemObject");  
     for (var k = -2; k <= 0; k++)  
     {  
         var out_dir = "C:\\PROBE\\DataFiles\\Input\\CL_CH5";  
         // now i am copying a ext_028042012 to destination folder    
         fso.CopyFile("C:\\PR\\DataFiles\\Input\\CL_CH5\\"+k+"\\ext_028042012.dat",                                                                            
         "C:\\PR\\DataFiles\\Input\\ext_028042012.dat", 1);  
         WScript.Echo(k+"file copied.");  
         /*Block which run cmd window*/  
         //The following code should open a command window, changes to the path to C:\ ,   and executes the DIR command.
         var oShell = WScript.CreateObject ("WScript.Shell");  
         **oShell.run ("cmd /K cd c:\pr /K process.bat c:\ext_028042012.dat auto");**  
         WScript.Echo(k+ "file proceed!!!");
  1. 很遗憾,它不起作用。脚本不会将命令行从 p.3 放到打开的 cmd.exe 窗口中。 请告诉我我的错误在哪里。十分感谢。

【问题讨论】:

  • 您遇到什么错误?以及如何运行它?

标签: javascript shell command-line cmd


【解决方案1】:

您的command 字符串,

"cmd /K cd c:\pr /K process.bat c:\ext_028042012.dat auto"

看起来是错误的。我不相信你可以指定几个 /K 这样的命令 - 因为/K 的含义是“执行命令并继续”永远不会结束你启动的第一个 shell。 p>

你试过了吗:

"cmd /K cd c:\pr && process.bat c:\ext_028042012.dat auto"

【讨论】:

  • result: '系统找不到指定的路径。 C:\PR\DataFiles\Input>' - 没有任何变化 =(
  • 是来自fso.CopyFile 行的错误,还是process.bat 中的错误?文件夹存在吗?
  • 完全正确!!!路径不正确有问题。我也应该使用双斜杠而不是“\”。您想让 cmd.exe 知道在“c:\pr && process.bat c:\ext_028042012.dat auto”之后等待按回车吗?我尝试使用\k和\c,但没有效果。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-02-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-03-30
  • 2012-08-07
相关资源
最近更新 更多