java在linux本地执行shell命令的实现方法

网友投稿 556 2022-08-25


java在linux本地执行shell命令的实现方法

目录一.以springboot为例,建立代码1.IExecCommandServer:2.ExecCommandServerImp:3.ExecCommandController:二,执行示例

一.以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

日志中输出:


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:NumPy 与 Python 内置列表计算标准差的区别(numpy官网)
下一篇:字符串的常用操作(字符串的基本操作)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~