请问如何获得Shell的输出

syhan 2006-11-11 09:03:03
例如说我执行了如下的命令
Process proc = Runtime.getRuntime().exec("echo Hello");
现在我想获得命令行的输出,也就是说我要获得Hello这个字符串,我该怎么做?
好像Process有getOutputStream()的方法,但是直接toString()打印出来的是类名,我该怎么怎么获得Shell的输出呢
...全文
186 3 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
syhan 2006-11-12
  • 打赏
  • 举报
回复
但是还有个问题,您给的这个方法并不能获得所有的输出,例如我ps -Al|grep l2tpd|grep -v grep就眉宇把我相应的进程信息打印出来
syhan 2006-11-12
  • 打赏
  • 举报
回复
太好了,谢谢你leeight(睡醒了!)
不过得InputStream is = proc.getInputStream();
int c = 0;

while((c = is.read()) != -1){
System.out.print((char)c);
}
才能取得输出
leeight 2006-11-11
  • 打赏
  • 举报
回复
OutputStream os = proc.getOutputStream();
int c = 0;
while((c = os.read()) != -1){
System.out.println((char)c);
}

62,635

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧