gpt4 book ai didi

java - EOF 同时寻找匹配 `"' 错误

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:29:53 27 4
gpt4 key购买 nike

sh -c "cd /home/dipankar/NetBeansProjects/TransBench/Hindi;./mat"

在 linux 终端中执行以下命令时,它的执行非常完美。但是,当我尝试使用 java 运行时运行它时,它会出现以下错误:

ERROR>/home/dipankar/NetBeansProjects/TransBench/Hindi;./mat": -c: line 0: unexpected EOF while looking for matching `"'
ERROR>/home/dipankar/NetBeansProjects/TransBench/Hindi;./mat": -c: line 1: syntax error: unexpected end of file

请帮助我是 linux 的新手。

Runtime rt = Runtime.getRuntime();               
Process proc = rt.exec("sh -c \"cd /home/dipankar/NetBeansProjects/TransBench/Hindi;./mat\"");
proc.waitFor();

最佳答案

鉴于标记和症状,我希望您使用的是 exec 方法,该方法将命令作为单个 String

那是行不通的。问题在于该方法使用非常简单的方案将命令字符串“解析”为命令名称和参数。它只是在有空格的地方拆分字符串...忽略任何引号和任何其他 shell 内容。

您需要做的是使用带有String[] 的重载;例如

    ....exec(new String[]{
"sh",
"-c",
"cd /home/dipankar/NetBeansProjects/TransBench/Hindi;./mat"
});

关于java - EOF 同时寻找匹配 `"' 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16056567/

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