怎么在java代码中调⽤shell脚本
可以在java代码中调⽤shell脚本的,下⾯是⼀个简单⽰例
1.java代码⽰例如下:
/**
* java程序调⽤shell脚本
*/
public class JavaExecuteShell {
public static void main(String[] args) {
try {
String cmd = "sh /usr/local/app/deploy/test.sh "+args[0] +" "+args[1];
System.out.println("cmd = "+cmd);
Process exec = Runtime().exec(cmd);
String line;
//要执⾏的程序可能输出较多,⽽运⾏窗⼝的缓冲区有限,会造成waitFor阻塞,利⽤这种⽅式可以在waitFor命令之前读掉输出缓冲区的内容 BufferedReader bufferedReader = new BufferedReader(new InputStream()));
while ((line = adLine())!=null){java调用python模型
System.out.println("result======="+line);
}
bufferedReader.close();
//等待脚本执⾏完成
exec.waitFor();
} catch (IOException | InterruptedException e) {
e.printStackTrace();
}
}
}
2.在linux机器的/usr/local/app/deploy路径下创建名为test.sh的脚本,脚本内容为:
echo i love $1 and $2
⽬的:传⼊两个参数,打印⼀句话
3.将上⾯的java类打成jar包并传到与test.sh相同的⽬录下,如果idea不知道怎么导出jar,可以参考下⾯的⽂章:
4.给脚本添加权限,执⾏,代码如下:
java -jar shell.jar zhang li
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论