gpt4 book ai didi

java - 在不知道操作系统的情况下从 java 启动命令行

转载 作者:行者123 更新时间:2023-11-30 04:32:05 27 4
gpt4 key购买 nike

有没有办法在不了解操作系统的情况下从 java 启动命令行?例如,该方法将为 Linux 操作系统打开终端 shell,并为 Windows 打开命令行。

我确实知道(通过查看之前的问题)我可以检查操作系统,然后打开正确的命令行,但是有没有办法从与操作系统无关的 java 方法打开命令行?

最佳答案

跨平台没有直接或统一的方法来做到这一点。您可以实现的一种方法是

  1. 确定操作系统(使用 System.getProperty("os.name"))。
  2. 然后根据操作系统,执行操作系统特定的命令。

例如:(摘自 here 的片段)

           String OS = System.getProperty("os.name").toLowerCase();

if (isWindows(OS)) {
String path = "c:\\";
Runtime.getRuntime().exec(new String[] { "cmd.exe", "/C", "\"start; cd "+path+"\"" });;
} else if (isMac(OS)) {
//Open Mac Prompt
} else if (isUnix(OS)) {
//Open UnixPrompt
} else if (isSolaris(OS)) {
//Open Solaris Prompt
} else {
System.out.println("Your OS is not support!!");
}

public static boolean isWindows(String OS) {

return (OS.indexOf("win") >= 0);

}

public static boolean isMac(String OS) {

return (OS.indexOf("mac") >= 0);

}

public static boolean isUnix(String OS) {

return (OS.indexOf("nix") >= 0 || OS.indexOf("nux") >= 0 || OS.indexOf("aix") > 0 );

}

public static boolean isSolaris(String OS) {

return (OS.indexOf("sunos") >= 0);

}

请查找不同操作系统的相关代码

注意:它只是一个代码片段。它不会按原样编译。

关于java - 在不知道操作系统的情况下从 java 启动命令行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14393716/

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