我在 OSX 上调用运行时执行时在命令前添加“/bin/bash”、“-c”,例如:
Runtime runtime = Runtime.getRuntime();
Process process = runtime.exec(new String[] { "/bin/bash", "-c", cmd });
我知道 Windows 和 Linux 是不同的。如何确保我的运行时命令可以在多操作系统上运行?
谢谢。
最佳答案
使用类似的东西:
String osName = System.getProperty("os.name");
if(osName.startsWith("Windows")) {
// windows code
} else {
if(osName.startsWith("Linux") {
// linux code
} else {
// mac code
}
}
免责声明:这只是方向性的。您仍然需要测试许多极端情况(例如 FreeBSD)才能获得正确的行为。
关于java - 如何让runtime.exec()在Java中的多操作系统上工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8200904/