1 2 3 4 5 |
public interface IExecCommandServer {
void execCommand(String cmd);
} |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
@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(); } } } |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
@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"); }
} |
1 |
http://192.168.142.222:8086/linux/exec?cmd=ls /mnt |
日志中输出: