gpt4 book ai didi

java - 如何使用 Java 运行时使用 "cd"命令?

转载 作者:IT老高 更新时间:2023-10-28 20:32:25 27 4
gpt4 key购买 nike

我创建了一个独立的 java 应用程序,我试图在 Ubuntu 10.04 终端中使用“cd”命令更改目录。我使用了以下代码。

String[] command = new String[]{"cd",path};
Process child = Runtime.getRuntime().exec(command, null);

但是上面的代码给出了以下错误

Exception in thread "main" java.io.IOException: Cannot run program "cd": java.io.IOException: error=2, No such file or directory

谁能告诉我如何实现它?

最佳答案

没有名为 cd 的可执行文件,因为它不能在单独的进程中实现。

问题是每个进程都有自己的当前工作目录,并且将 cd 实现为单独的进程只会改变 那个 进程当前工作目录。

在 Java 程序中,您不能更改当前工作目录,而且您不需要这样做。只需使用绝对文件路径。

当前工作目录很重要的一种情况是执行外部进程(使用 ProcessBuilderRuntime.exec())。在这些情况下,您可以明确指定用于新启动进程的工作目录(分别为 ProcessBuilder.directory()three-argument Runtime.exec())。

注意:当前工作目录可以从system property中读取user.dir。您可能会想设置该系统属性。请注意,这样做会导致 very bad inconsistencies , 因为 it's not meant to be writable .

关于java - 如何使用 Java 运行时使用 "cd"命令?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4884681/

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