您现在的位置:首页 > >

解决java使用Runtime.exec执行linux命令不成功问题

发布时间:

*日实现一个需求,需要用java执行Linux命令,但是命令在Linux上面可以执行,但是java用


Runtime.getRuntime().exec(cmd)执行却不成功.比如关闭redis进程命令

ps -a | grep redis | xargs kill -9

用java执行却不行:


String cmd = "ps -a | grep redis | xargs kill -9";
Process exec = Runtime.getRuntime().exec(cmd);

需要修改为:


String linuxCmd = "ps -a | grep redis | xargs kill -9";
String[] cmd = new String[]{"sh","-c",linuxCmd};
exec = Runtime.getRuntime().exec(cmd);

重点是加上"sh"和"-c"


就可以啦!!


热文推荐
猜你喜欢
友情链接: