자바 프로그램 호출 bat
1. 참고 문헌
1. JAVA 가 WIN 에서 수행 하 는. BAT 파일 에 관 한 문 제 를 물 어보 세 요. ->6 층 대답
2. cmd 를 호출 하여 bat 파일 을 실행 한 후 자동 으로 종료 하 는 방법 ->11 층 대답
3. 자바 호출 bat
앞의 블 로그 에는 my sql 데이터베이스 백업 과 복구 라 고 적 혀 있 습 니 다. 이것 은 주로 bat 파일 을 수 동 으로 호출 하여 실 행 됩 니 다. 그러면 프로그램 에서 bat 파일 을 어떻게 호출 합 니까?이것 이 바로 이 블 로그 가 말 해 야 할 주제 이다.
2. 실례 1:
import java.io.IOException;
public class InvokeBat4 {
public void runbat(String batName) {
String cmd = "cmd /c start F:\\database_backup\
gx_backup\\"+ batName + ".bat";// pass
try {
Process ps = Runtime.getRuntime().exec(cmd);
ps.waitFor();
} catch (IOException ioe) {
ioe.printStackTrace();
}
catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
System.out.println("child thread donn");
}
public static void main(String[] args) {
InvokeBat4 test1 = new InvokeBat4();
test1.runbat("backup_ngx");
System.out.println("main thread");
}
}
2.1. 단점:
cmd 상자 가 팝 업 되 며 자동 으로 닫 을 수 없습니다.
2.2. 해결 방법:
bat 파일 마지막 에 추가
exit
예 를 들 어 원래 의 bat 파일 내용 은 다음 과 같다.
mysqldump -uroot -proot --database ngx_ad ngx_authority ngx_jbpm ngx_mes ngx_model > F:\database_backup
gx_backup
gx_db.sql
우 리 는 그것 을
mysqldump -uroot -proot --database ngx_ad ngx_authority ngx_jbpm ngx_mes ngx_model > F:\database_backup
gx_backup
gx_db.sql exit
2.3. 자동 으로 탈퇴 할 수 있 지만 존재 하 는 문제점
자동 으로 종료 할 수 있 더 라 도 이 bat 를 호출 할 때마다 화면 이 cmd 명령 상 자 를 반 짝 입 니 다.
3. 인 스 턴 스 개선, bat 직접 실행
import java.io.IOException;
import java.io.InputStream;
public class InvokeBat2 {
public void runbat(String batName) {
try {
Process ps = Runtime.getRuntime().exec(batName);
InputStream in = ps.getInputStream();
int c;
while ((c = in.read()) != -1) {
System.out.print(c);// ,
}
in.close();
ps.waitFor();
} catch (IOException ioe) {
ioe.printStackTrace();
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
System.out.println("child thread done");
}
public static void main(String[] args) {
InvokeBat2 test1 = new InvokeBat2();
String batName = "F:\\database_backup\
gx_backup\\backup_ngx.bat";
test1.runbat(batName);
System.out.println("main thread");
}
}
다음 글: Extjs + JSON 인 스 턴 스http://www.cnblogs.com/xwdreamer/archive/2011/12/11/2296912.html
알고리즘 면접 문제 요약http://www.cnblogs.com/xwdreamer/archive/2011/12/13/2296910.html
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.