fix: 执行带空格路径命令的错误

This commit is contained in:
2024-11-16 00:20:01 +08:00
parent 227f565991
commit 92f9737e27
3 changed files with 31 additions and 11 deletions

View File

@ -52,12 +52,34 @@ public class ProcessesUtil {
public static ProcessesUtil init(String workingDirectory) {
return init(new File(workingDirectory));
}
public static ProcessesUtil init(File workingDirectory) {
ProcessesUtil util = new ProcessesUtil(workingDirectory);
set.add(util);
return util;
}
/**
* 转命令
*
* @param command 命令模板
* @param params 参数
* @return 命令
*/
public static String format(String command, Object... params) {
int i = 0;
while (command.contains("{}") && params != null) {
String param = String.valueOf(params[i++]);
if (param.contains(" "))
param = STR."\"\{param}\"";
command = command.replaceFirst("\\{}", param.replace("\\", "\\\\"));
}
return command;
}
public boolean exec(String command) {
commandLine = CommandLine.parse(command);
try {