2016-03-26 7 views
0

Kann ich ProcessBuilder oder etwas anderes in den Java-Bibliotheken verwenden, um auf die Eingabeaufforderung in Windows zuzugreifen und Befehle auszuführen? Ich weiß, Sie können mit Terminal auf Mac und ich habe dies:Zugriff auf die Eingabeaufforderung (Windows) über Java

ProcessBuilder pb = new ProcessBuilder(
     "bash", 
     "-c", 
     "cd " + System.getProperty("user.dir") + ";" + "someCommandInThatDirectory" 
    ); 

Process p = pb.start(); 

Um einen Befehl in einem Verzeichnis ausführen, ist sie ein ähnliches Ding in Fenstern über Eingabeaufforderung zu tun?

Ich habe dies die os

String os = System.getProperty("os.name"); 
    if (os == "Mac OS X") { 
    //do the mac thing 
    } 
    else if (os == "Windows XP" /*blah blah rest of windows types*/) { 
    //do the windows one 
    } 
+0

Ja, Sie Befehl wie 'neue Process nur ausführen kann (" cmd/c dir c: \ ");' hier cmd ist die Eingabeaufforderung und wir versuchen, ls alternative Befehl in Windows auszuführen. –

Antwort

0

überprüfen Sie Runtime.getRuntime() verwenden, exec.

String command = "cmd /c start cmd.exe ...your other commands"; 
try { 
    Process process = Runtime.getRuntime().exec(command); 
} catch (IOException e) { 
    e.printStackTrace(); 
}