这篇文章主要讲解了“java在linux本地如何执行shell命令”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“java在linux本地如何执行shell命令”吧!
一.以springboot为例,建立代码
1.IExecCommandServer:
public interface IExecCommandServer { void execCommand(String cmd); }
2.ExecCommandServerImp:
@Servicepublic class ExecCommandServerImp implements IExecCommandServer { @Override public void execCommand(String cmd){ try{ Runtime rt = Runtime.getRuntime(); Process proc = rt.exec(cmd,null,null); InputStream stderr = proc.getInputStream(); InputStreamReader isr = new InputStreamReader(stderr,"GBK"); BufferedReader br = new BufferedReader(isr); String line=""; while ((line = br.readLine()) != null) { System.out.println(line); } }catch (Exception e){ e.printStackTrace(); } }}
3.ExecCommandController:
@CrossOrigin@RestController@RequestMapping("/linux")public class ExecCommandController { @Autowired private IExecCommandServer execCommandServer; @GetMapping("/exec") public ResultMap execCommand(String cmd) throws Exception { execCommandServer.execCommand(cmd); return Result.success("ok"); } }
二,执行示例
http://192.168.142.222:8086/linux/exec?cmd=ls /mnt
日志中输出:
感谢各位的阅读,以上就是“java在linux本地如何执行shell命令”的内容了,经过本文的学习后,相信大家对java在linux本地如何执行shell命令这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是编程网,小编将为大家推送更多相关知识点的文章,欢迎关注!