2014-02-18 4 views
0

.bat 파일을 만들지 않고 "move FolderA FolderB"와 같은 cmd 명령을 실행하여 시작하는 방법이 있습니까? HDD에 파일을 만들지 않고 작동하면 좋을 것입니다..bat 파일을 만들지 않고 cmd 명령을 실행하십시오.

+0

왜 Java가이 질문에 태그되어 있습니까? –

+0

@Sharpedge 나는 그들이 자바 프로그램에서 그것을하고 싶어한다고 가정한다; 태그에서 유추 한 것일 뿐이지 만 잘못 될 수 있습니다. – slim

+0

가능한 복제 [자바를 통해 cmd를 실행] (http://stackoverflow.com/questions/15464111/run-cmd-commands-through-java) –

답변

1
Runtime.getRuntime().exec(new String[]{"cmd.exe","/c","move","dirA/a.txt","dirB"}); 
1
Process process = new ProcessBuilder("cmd.exe", 
         "/c","move","dirA/a.txt","dirB").start(); 

ProcessBuilder는 Javadoc을 따른 자바 1.5 Runtime.exec() 때문에 바람직하다.

프로세스를 읽고 쓰는 방법을 이해하려면 Process Javadoc을 읽으십시오.

move과 같은 명령에 대한 쉘 아웃은 휴대용이 아니기 때문에 안전하지 않습니다. 대신 File 클래스와 협력하십시오. 그러나 때로는 좀 더 난해한 외부 프로그램과 상호 작용할 수 밖에없는 경우가 있습니다.

+0

슬프게도 "shell-out"함수를 "windows-only" 왜냐하면 자바가 윈도우가 파일 이동 프로세스를 수행하기 때문이다. 단일 cmd 명령 만 정렬 된 순서로 파일을 이동합니다. –

+0

순수 자바로 할 수없는 '이동'으로 할 수있는 일은 분명 없습니다. – slim

+0

그건 옳지 않습니다. java 또는 apache commons가 이동을 수행하면 프로세스가 시작됩니다. "a.txt"대신 "a.txt"대신 a.txt ..., a.txt .... z.txt –

관련 문제