从Java应用程序运行cmder.exe时出现问题

时间:2018-07-11 12:22:16

标签: java cmder

我正在尝试从Java应用程序运行cmder.exe。我使用的是Java ProcessBuilder类,它与cmd.exe配合使用效果很好,但与cmder.exe搭配使用效果却很好。

这是我的代码:

    command =    "cd C:\\Users\\fxxx\\Documents\\plt 3.0\\git\\xxx-estatic";
    ProcessBuilder builder = new ProcessBuilder("C:\\PLT 3.0\\abc\\cmder_mini\\cmder.exe", "/start", command);

我想打开cmder命令提示符并运行“ cd”命令。 Cmder.exe实际上已启动,但是出现“文件名,目录名或卷标语法不正确”的错误消息,并且我的命令(cd ...)从未执行。

同样,如果我使用cmd.exe,一切运行正常。

有人知道如何从Java应用程序中有效运行cmder.exe吗?

非常感谢。

1 个答案:

答案 0 :(得分:0)

RTFM!

假设您使用that cmder.exe,则文档将说明:

  

Cmder.exe命令行参数

Argument                Description
/C [user_root_path]     Individual user Cmder root folder. Example: %userprofile%\cmder_config
/SINGLE                 Start Cmder is single mode.
/START [start_path]     Folder path to start in.
/TASK [task_name]       Task to start after launch.

这意味着您的代码应为:

path =    "cd C:\\Users\\fxxx\\Documents\\plt 3.0\\git\\xxx-estatic";
ProcessBuilder builder = new ProcessBuilder("C:\\PLT 3.0\\abc\\cmder_mini\\cmder.exe", "/start", path);