本文主要介绍了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命令内容请搜索编程学习网以前的文章希望大家以后多多支持编程学习网!
沃梦达教程
本文标题为:java在linux本地执行shell命令的实现方法
基础教程推荐
猜你喜欢
- Java实现查找文件和替换文件内容 2023-04-06
- ConditionalOnProperty配置swagger不生效问题及解决 2023-01-02
- JDK数组阻塞队列源码深入分析总结 2023-04-18
- java实现多人聊天系统 2023-05-19
- Java数据结构之对象比较详解 2023-03-07
- Java并发编程进阶之线程控制篇 2023-03-07
- java基础知识之FileInputStream流的使用 2023-08-11
- Java文件管理操作的知识点整理 2023-05-19
- springboot自定义starter方法及注解实例 2023-03-31
- Java实现线程插队的示例代码 2022-09-03