java在linux本地如何执行shell命令
更新:HHH   时间:2023-1-7


这篇文章主要讲解了“java在linux本地如何执行shell命令”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“java在linux本地如何执行shell命令”吧!

    一.以springboot为例,建立代码

    1.IExecCommandServer:

    public interface IExecCommandServer {
     
        void execCommand(String cmd);
     
    }

    2.ExecCommandServerImp:

    @Service
    public 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命令这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是天达云,小编将为大家推送更多相关知识点的文章,欢迎关注!

    返回开发技术教程...