Linux Ubuntu OS에서 일부 설치된 도구를 실행할 Java 프로그램을 작성 중이므로 동일한 프로세스에서 두 개의 연속 명령을 실행해야하지만 처음에는 완전히 실행 한 다음 두 번째를 호출하십시오. "\ n"다음 코드와 같이 두 명령을 구분하려고 시도했지만 작동하지 않았습니다.Java 응용 프로그램에서 Enter 키를 누르는 방법
public static void main (String args[])
{
List<String> command = new ArrayList<String>();
command.add("spin");
command.add("-p");
command.add("-u100");
command.add("D:\\promela\\peterson.pml");
command.add("\n");
command.add("cc -o pan pan.c");
command.add("./pan");
String[] commandArray = command.toArray(new String[command.size()]);
ProcessBuilder pb = new ProcessBuilder(commandArray);
Process process;
try {
process = pb.start();
BufferedReader br = new BufferedReader(new InputStreamReader(process.getInputStream()));
BufferedReader errReader = new BufferedReader(new InputStreamReader(process.getErrorStream()));
String errline, outline;
for(String s : command)
{
System.out.println(s + " ");
}
while ((outline = br.readLine()) != null)
{
System.out.println(outline);
}
while ((errline = errReader.readLine()) != null)
{
System.err.println(errline);
}
} catch (IOException e)
{
e.printStackTrace();
}
}
@MarcoForberg 아니, Java에서 Ctrl + Enter를 어떻게 전달할 수 있습니까? – Sami
아 잊어 버려. 틀 렸습니다. 콘솔에서 읽을 때 입력을 전달해야한다고 생각했습니다. –