【问题标题】:How can i set this path in java?我怎样才能在java中设置这个路径?
【发布时间】:2013-10-22 14:50:54
【问题描述】:

我想通过 java 执行一个批处理命令。 我怎样才能做到这一点 ? "c:\windows\system32\net 使用 s:\192.168.1.160"\100 Gelem 1" /user:xxx xxx" 这个实际上适用于 Windows 命令提示符

我尝试但没有成功的代码是:

String[] cmd = { "c:\\windows\\system32\\net","use s: \\\\192.168.1.160\"\\100 Gelem 1     \" /user:100 100"};

Process p = Runtime.getRuntime().exec(cmd);
ProcessBuilder builder = new ProcessBuilder(cmd);
builder.redirectErrorStream(true);
p.waitFor();

【问题讨论】:

  • 您遇到的错误是什么
  • 空格和引号? "c:\\windows\\system32\\net","使用 s:\\\\\\192.168.1.160\\100 Gelem 1\" /user:100 100"
  • 尝试将每个参数拆分为数组中的单独元素。 String[] cmd = { "c:\\windows\\system32\\net","use", "s:", "\\\\192.168.1.160\\100 Gelem 1", "/user:100" , "100"};
  • 仍然无法工作:(Dos运行它的正确方式是这样的:c:\windows\system32\net.exe use s:"\\192.168.1.160\100 Gelem 1" /user :100 100

标签: batch-file path command escaping processbuilder


【解决方案1】:

我终于解决了!!!

cmd1 = "c:\\windows\\system32\\net.exe " + "use" + " s:" +
                   " \"\\\\192.168.1.160\\100 Gelem 1\"" + " /user:100" + " 100";
String[] cmd = {cmd1};

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-09-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-03-20
    • 1970-01-01
    • 2022-01-11
    相关资源
    最近更新 更多