
如何从Java读取Shell命令的实时输出
这是我到目前为止的内容,但是在执行命令后打印:
try { proc = Runtime.getRuntime().exec("du -d 1 /sdcard/"); inputStream inputStream = proc.getinputStream(); inputStreamReader inputStreamReader = new inputStreamReader(inputStream); BufferedReader bufferedReader = new BufferedReader(inputStreamReader); while ((line = bufferedReader.readline()) != null) { publishProgress(i); i++; System.out.println(line); // it prints all at once after command has been executed. }}catch (IOException e) { Log.e("du","error "+e.getMessage());}解决方法:
尝试这个:
try { proc = Runtime.getRuntime().exec("du -d 1 /sdcard/"); inputStream inputStream = proc.getinputStream(); inputStreamReader inputStreamReader = new inputStreamReader(inputStream); BufferedReader bufferedReader = new BufferedReader(inputStreamReader); while ((line = bufferedReader.readline()) != null) { System.out.println(line); // it prints all at once after command has been executed. } proc.waitFor();}catch (IOException e) { Log.e("du","error "+e.getMessage());} 总结 以上是内存溢出为你收集整理的java-读取命令的实时输出全部内容,希望文章能够帮你解决java-读取命令的实时输出所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)