gpt4 book ai didi

Java进程构建器获取构建命令

转载 作者:行者123 更新时间:2023-12-01 04:46:44 25 4
gpt4 key购买 nike

我需要在新的控制台窗口中启动一个进程。对于Macs,我发现了这样的东西:Running a command in a new Mac OS X Terminal window其中要运行的命令作为字符串传递。

因此,我创建了一个方法,给出一个字符串列表(如进程构建器),返回将在新控制台窗口中运行给定命令的字符串列表(最终命令)。我可以在给定的字符串后面附加空格,这在大多数情况下都可以工作,但是我如何正确地转义它呢?例如,我可以传递流程构建器 new String[] { "echo", "hello world"},它实际上会 echo "hello world"。它也处理很多其他情况(我认为)。

我认为解释很复杂,所以这里是一个伪 stub :

public static String[] getConsoleCommand(String[] command) {
if operating system is Mac...
String commandString = concatenate command...
return new String[] { "osascript", "-e",
String.format("'tell application \"Terminal\" to do script \"%s\"'",
commandString.replace("'", "\\\'")) // escape single quote used in 'tell application...'
};
}

最佳答案

import org.apache.commons.lang.StringEscapeUtils;

for(int i = 0;i <arrayCommand.length();i++) {
arrayCommand[i] = StringEscapeUtils.escapeJava(unescapedJava);
}

关于Java进程构建器获取构建命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15713982/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com