我在windows下写了一个.bat批处理文件,文件内容:
exp system/manager1@db tables=T_YHXX grants=y file=d:\e.dmp
imp system/ff@dddd tables=T_YHXX grants=y file=d:\e.dmp
exit
就是导入导出,java是这样调用的:
public static void main(String[] args){
try {
String command = "cmd.exe /C start c:\\a.bat";
Process child = Runtime.getRuntime().exec(command);
} catch (IOException e) {
e.printStackTrace();
}
}
请问要是在linux下,有没有对应的cmd的方法,能让它自动执行的语句,sh行不行?请给一段实例,谢谢
------解决方案--------------------
- Java code
public void startup() { try { Process process = Runtime.getRuntime().exec("sh startup.sh &"); InputStream inputStream = process.getInputStream(); byte[] bs = new byte[1024]; inputStream.read(bs); inputStream.close(); } catch (IOException e) { log.error(e.getMessage()); } }
------解决方案--------------------
------解决方案--------------------
貌似楼主需要一个在Linu下面的“.dat”文件“.sh”
------解决方案--------------------
个人认为:不用这么麻烦吧!直接调用你目录下的sh不就ok拉!
Runtime.getRuntime().exec("startup.sh",null,new File("你的sh所在目录"));
就可以执行目录所在的sh!
------解决方案--------------------
跟bat差不多,唯一不同的是在引用包与包之间不是分号隔开,是冒号
例:
java -classpath java -classpath ../lib/log4j-1.2.8.jar:../lib/tools.jar:../lib/app.jar cn.test.Test
------解决方案--------------------