2012-04-03 2 views
3

나는 리눅스 코드를 java 코드에서 실행하려고하는데, 작동하지 않는다.java execution linux command

Runtime.getRuntime().exec("cat /home/roman/logs/*"); 

그리고 그것은

Runtime.getRuntime().exec("cat /home/roman/logs/mylog.log"); 

내 질문은 하나의 파일의 고양이를 위해 잘 작동하는 방법 고양이 자바에서 일부 디렉토리에있는 모든 파일에?

+0

[Java에서 Linux 쉘 명령을 호출하고 싶다]에서 설명한 해결책을 시도하십시오. (http://stackoverflow.com/questions/1410741/want-to-invoke-a-linux-shell-command- from-java) –

답변

4

당신은 모음으로 디렉토리 아래에있는 모든 파일을 넣어 그것을 반복 수 :

File[] files = dir.listFiles(); 
for (File f : files) { 
    Runtime.getRuntime().exec("cat "+dir.getAbsolutePath()+File.separator+f.getName()); 
} 
3

exec() 명령과 함께 *을 사용할 수 없습니다 (셸이 필요함). 해결책은 스크립트를 작성한 다음 Java 응용 프로그램에서 해당 스크립트 exec()을 작성하는 것일 수 있습니다.