java在linux本地执行shell命令的实现方法
更新时间:2022年02月25日 11:26:49 作者:纯洁的小魔鬼
本文主要介绍了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命令内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
maven项目中<scope>provided</scope>的作用及说明
这篇文章主要介绍了maven项目中<scope>provided</scope>的作用及说明,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教2023-12-12
mybatis 获取更新(update)记录的id之<selectKey>用法说明
这篇文章主要介绍了mybatis 获取更新(update)记录的id之<selectKey>用法说明,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2022-05-05
Java中replace、replaceAll和replaceFirst函数的用法小结
相信会java的同学估计都用过replace、replaceAll、replaceFirst这三个函数,可是,我们真的懂他们吗?下面通过这篇文章大家再来好好学习学习下这几个函数。2016-09-09


最新评论