如何将参数传递到批处理文件?

时间:2009-07-06 17:10:59

标签: batch-file

如何使用java runtime.exec()将参数传递到批处理文件中。

  

****进程pp = run.exec(“C:\ Program Files \ Apache Group \ Tomcat   4.1 \ bin \ RMIClientInvoker.bat C:\ Program Files \ Apache Group \ Tomcat 4.1 \ bin localhost date“); ****

当我使用这个编码时会出现错误。参数是最后三部分。补丁文件是RMIClientInvoker.bat。我尝试在命令行中出现相同的错误,但我把双Qoutes放到参数正确的o / p display.so任何一个帮助如何给参数doubleQoutes。

1 个答案:

答案 0 :(得分:2)

逃避双引号:

Process pp = run.exec("\"C:\Program Files\Apache Group\Tomcat 4.1\bin\RMIClientInvoker.bat\" \"C:\Program Files\Apache Group\Tomcat 4.1\bin\" localhost date");

失败的原因是运行时exec按空格分割参数(与java调用Main方法时的方式相同)。引用参数确保它将整个C:\ Program Files \ Apache Group \ Tomcat 4.1 \ bin \ RMIClientInvoker.bat视为单个参数,并且不认为它是一组四个参数:

  • C:\ Program
  • 文件\阿帕奇
  • Group \ Tomcat
  • 4.1 \ BIN \ RMIClientInvoker.bat