首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2SE开发 >

Process的相关有关问题

2012-01-06 
Process的相关问题在java中调用控制台命令,Runtime.getRuntime().exec(commandstr1)执行一条指令可以,但

Process的相关问题
在java中调用控制台命令,
Runtime.getRuntime().exec(commandstr1);
执行一条指令可以,
但遇到多条相关指令执行时不行,如,先打开相关路径下的数据库控制台,再选择使用的数据库,再调用备份数据指令.请指点.
String   commandstr1= "C:\\program   files\\mysql\\bin\\   mysql   -uroot   -proot   ";
String   commandstr2= "use   database ";
String   commandstr3= "into   outfile   'a.txt ' ";

[解决办法]
String commandstr2= "use database ";
String commandstr3= "into outfile 'a.txt ' ";
这两条,应该是不能执行,它们不是windows的东西....
应该是连到mysql数据库,然后以执行sql语句的方式,运行这些命令.
[解决办法]
写成bat文件不行?
[解决办法]
在WINDOWS下面 把命令写在BAT里面
然后Runtime.getRuntime().exec( "c:/test.bat ");
如果直接执行都不行就不要指望Process来执行了
在LINUX下面
写成shell也一样执行

[解决办法]
写成bat或者shell调用
[解决办法]
public static void main(String[] args) {

Runtime rn = Runtime.getRuntime();
Process p = null;
try {
FileWriter writer = new FileWriter( "c:\\mysql.bat ");
writer.write( "@echo off ");
writer.write( "\r\n ");
writer.write( "cd C:\\program files\\mysql\\bin\\ mysql -uroot -proot ");
writer.write( "\r\n ");
writer.write( "use database ");
writer.write( "\r\n ");
writer.write( "@echo on ");
writer.close();
p = rn.exec( "cmd /C " + "c:\\mysql.bat ");

} catch (Exception e1) {
e1.printStackTrace();
}
}

热点排行