Process process=Runtime. Runtime.getRuntime().exec("ps -ef | grep -v 进程名");然后你要使用线程不停地读取process.getErrorStream()和process.getInputStream(),注意一定要使用线程读,不能等待process执行完成后再读,因为缓存区大小固定,process往缓冲区里写时若缓冲区满了则process会等待缓冲...
直接调用Linux命令:使用java.lang包下的Runtime类和Process类。通过Runtime.getRuntime.exec方法直接执行Linux命令。Process类可以接收Runtime.getRuntime.exec方法的返回值,并提供waitFor方法等待进程执行完成,以及destroy方法销毁进程。调用Shell脚本:首先将需要执行的Linux命令写入一个Shell脚本中。在Java代...
这里用到的Runtime.getRuntime()方法是取得当前JVM的运行环境,也是java中唯一可以得到运行环境的方法。(另外,Runtime的大部分方法都是实例方法,也就是说每次运行调用的时候都需要调用到getRuntime方法)下面说说Runtime的exec()方法,这里要注意的有一点,就是public Process exec(String [] cmdArray,...
nohup java -jar project.jar > app.log 2>&1 &:后台运行JAR包,日志输出到app.log。ps -ef | grep java:查看Java进程。kill -9 进程ID:强制终止指定进程。日志与监控tail -f app.log:实时查看日志文件。cat app.log | grep "error":搜索日志中的关键词。jps:快速查看Java...
java程序是提供了这个一方法, Process pro = Runtime.getRuntime().exec(cmds); 但是一般来说,尽量去用一些其他脚本(lua,shell,python)去执行一系列linux命令比较灵活, 而且耗费资源少。但是Runtime.getRuntime().exec()这种调用方式在java虚拟机中是十分消耗资源的,即使命令可以很快的执行完毕...