不知道该怎么写 跪求详细代码 谢谢大神们了!!!!!!!
Runtime r = Runtime.getRuntime();
Process p = r.exec(cmds);
BufferedInputStream in = new BufferedInputStream(p.getInputStream());
BufferedReader br = new BufferedReader(new InputStreamReader(in));
String resultString = "";
String inline;
while (null != (inline = br.readLine())) {
resultString += inline + "\r";
}
br.close();
in.close();
程序里面cmds是一个字符串数组,数组里面就是要执行的脚本 ,使用数组表示一次可以执行多个脚本,如果不是执行多个脚本也可以不用数组,直接写要执行的脚本命令的字符串。resultString 是脚本的执行结果,如果脚本执行完没有输出的话,头两行code就可以了。
cmds可以直接写要执行的命令吗
也就是说shell文件的内容
@Yuxiang_Chen: 如果不是执行多个脚本也可以不用数组,直接写要执行的脚本命令的字符串
表示蒙蔽了😈
@young.dong: 为什么我写字符串他一直是把字符串当做一个路径去查找呢
java -jar xxx.jar 这样么?
是的
ProcessBuilder pb = new ProcessBuilder("src/lexparser.sh", "myArg1", "myArg2");//含参数 Process p = pb.start(); BufferedReader reader = new BufferedReader(new InputStreamReader(p.getInputStream())); String line = null; while ((line = reader.readLine()) != null) { System.out.println(line); }
谢谢大家了,命令本身存在问题 已经解决掉了