我試圖通過JAVA來運行一些命令行操作。我的一個命令需要輸入才能完成。我不知道如何在命令執行過程中通過java傳入回車。通過Java的CMD操作
import java.io.BufferedReader;
import java.io.InputStreamReader;
public class CommandLineMethods {
public static String executeCommand(String []command)
{
StringBuffer output = new StringBuffer();
Process p;
try{
p=Runtime.getRuntime().exec(command);
p.waitFor();
BufferedReader br = new BufferedReader(new InputStreamReader(p.getInputStream()));
String line = "";
while((line=br.readLine())!=null)
{
output.append(line + "\n");
}
}
catch(Exception e)
{
e.printStackTrace();
}
return output.toString();
}
public static void main(String...args)
{
String scriptsPath ="C:\\bip_autochain\\win64_x64\\scripts";
String scriptName="lcm_cli.bat";
String scriptArguments="lcmproperty C:\\TestNG_Auto\\resources\\LCMBiar_Import.property";
String []command = {"cmd.exe", "/c"," cd "+scriptsPath+" && "+ scriptName +" -"+scriptArguments};
String res = executeCommand(command);
System.out.println(res);
}
}
最後一條運行帶有某些參數的腳本的命令需要按下Enter才能完成。如何實現呢?
試舉當它提示輸入時出現'\ n'。 – bhansa
沒有不打印任何東西!它正在等待命令在打印之前完全執行。但這需要輸入在 –
可能重複[按Java按鍵](http://stackoverflow.com/questions/11442471/press-a-key-with-java) – bhansa