-1
我的程序運行在C:驅動器的目錄中,但我需要在驅動器D的另一個目錄中運行shell命令。我怎樣才能正確地做這樣的事情:如何在不同的工作目錄中運行shell命令
ProcessBuilder builder =
new ProcessBuilder("cmd.exe", "/c", "cd \"D:\\\" && dir");
我的程序運行在C:驅動器的目錄中,但我需要在驅動器D的另一個目錄中運行shell命令。我怎樣才能正確地做這樣的事情:如何在不同的工作目錄中運行shell命令
ProcessBuilder builder =
new ProcessBuilder("cmd.exe", "/c", "cd \"D:\\\" && dir");
要改變你的流程的工作目錄,開始之前,您builder
叫directory()
。
cmd /c "cd /d c:\temp && dir"
,「H:\\」); \t \t \t \t \t \t PB = pb.directory(新文件( 「H:\\」)); \t pb.redirectErrorStream(true); \t進程p = pb.start(); \t BufferedReader r = new BufferedReader(new InputStreamReader(p.getInputStream())); \t絃線; (true){ \t line = r.readLine(); \t if(line == null){break; } \t System.out.println(line); \t} –
這是對的嗎?因爲我仍然登陸C盤bu不在H盤 –
我在你的評論中看不到完整的命令,但以此爲例:'new ProcessBuilder(「cmd」,「/ c」,「dir」) .directory(新文件(「H:/」)).start()' – alirabiee