如何让runtime.exec()在Java中运行多操作系统?

时间:2011-11-20 10:27:40

标签: java runtime runtime.exec

我在OSX上调用运行时执行,在命令之前添加“/ bin / bash”,“ - c”,例如:

Runtime runtime = Runtime.getRuntime();  
Process process = runtime.exec(new String[] { "/bin/bash", "-c", cmd });  

我知道Windows和Linux有所不同。如何确保我的运行时命令适用于多操作系统?

谢谢。

1 个答案:

答案 0 :(得分:2)

使用类似:

    String osName = System.getProperty("os.name");
    if(osName.startsWith("Windows")) {
        // windows code
    } else {
        if(osName.startsWith("Linux") {
             // linux code
        } else {
             // mac code
        }
    }

免责声明:这只是方向性的。仍然有许多极端情况(例如FreeBSD)需要测试才能获得正确的行为。