자바에서 cmd.exe 명령을 실행하고 싶습니다 (예 : md C : \ blabla를 사용하여 새 디렉토리 C : \ blabla를 만듭니다) 내 코드는 다음과 같이 실행되며 실행됩니다.아파치와 간단한 cmd.exe 명령 실행 exec
import java.io.IOException;
import org.apache.commons.exec.CommandLine;
import org.apache.commons.exec.DefaultExecutor;
import org.apache.commons.exec.ExecuteException;
public class Test {
public static void main(String[] args) throws ExecuteException, IOException {
CommandLine cmdLine = new CommandLine("cmd.exe");
cmdLine.addArgument("md");
cmdLine.addArgument("C:\\blabla");
DefaultExecutor executor = new DefaultExecutor();
executor.execute(cmdLine);
}
}
하지만 C에 가면 : 잘 작동 \ blabla cmd.exe를에 : \ 수동 MD의 C를 입력하기 때문에 내가 기대하는 것처럼 아무 폴더 blabla이없는 오류없이. 나는 또한 "cmd.exe"대신 "C : \ Windows \ System32 \ cmd.exe"를 시도했지만 사용하지는 않습니다.
은 콘솔의 출력은 다음과 같습니다
마이크로 소프트 윈도우 [버전 6.1.7601] 저작권 (C) 2009에서 Microsoft Corporation합니다. 판권 소유.
C : Selphiron \ 작업 공간 \ 테스트>
\ \ 사용자 실수는 어디에 있습니까?
답장을위한 Thx. 그것은 작동하지만 cmd.exe를 열고 md C : \ blabla를 입력하면 새 디렉토리가 만들어집니다 (Windows 7 64 비트). 어쨌든 고맙습니다 :) – Selphiron
"cmd.exe"를 매개 변수로 사용한다고해서 cmd가 그것을 가져 와서 실행한다는 의미는 아닙니다. ''cmd.exe /? ''를 검사하여 매개 변수의 기능을 확인하십시오. – f1sh