gpt4 book ai didi

java - 在控制台中运行命令,最后没有\"

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:21:17 25 4
gpt4 key购买 nike

我想打开一个控制台窗口并从一个字符串中写入我想要的任何命令,该字符串因我输入的内容而异。问题是由于 CMD 参数中的最后一个/,所以没有带/或\的命令起作用。

我已经尝试删除和更改参数,但 CMD 将无法正确运行。

Runtime.getRuntime().exec("cmd /c start cmd.exe /K" + command + "\""); 

我希望能够运行任何命令(来自命令字符串),甚至是像 cd C:\这样包含/或\的命令

最佳答案

包含斜杠或反斜杠的命令在您的代码中工作得很好,带有但末尾没有额外的\",例如c:\windows\system32\winverc:/windows/system32/winver

C:\ 不起作用,因为它不是有效的 CMD 命令,如果不是内置命令(如 cdsetif) 或 drive:(或 :label)必须是一个文件名(路径名,或一个在 %PATH% 上搜索的简单名称)它是一个程序(.exe 或旧版本 .com)或关联到一个程序或者是一个 .bat 文件。如果您以交互方式运行 CMD 并输入 C:\ 它会失败,并且从 Java 传递相同的东西不能使它更好地工作。

Search-formerly-Run 框中的有效“命令”,或start 命令。那些故意接受一些不是程序的东西,并弄清楚如何“打开”它们——特别是它们通过运行资源管理器来“打开”一个目录名称,如 C:\。使用您的代码运行 explorer c:\ 确实有效。

关于java - 在控制台中运行命令,最后没有\",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55778436/

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