gpt4 book ai didi

java - Expectj - 获取在此 session 期间在 spawn 的标准输出上收到的所有内容

转载 作者:太空宇宙 更新时间:2023-11-04 11:37:51 25 4
gpt4 key购买 nike

我正在使用 Expectj 2.07。我正在尝试使用 getCurrentStandardOutContents() 来打印在 spawn 的标准输出上收到的所有内容。

public class ExpectTest {

public static void main(String args[])
{
ExpectJ expectInit = new ExpectJ(5);
try
{
Spawn s = expectInit.spawn("/bin/sh");
s.send("echo debraj\n");
System.out.println("Output->"+s.getCurrentStandardOutContents());
s.expectClose();

}catch(Exception io)
{
io.printStackTrace();
}


}

}

但是 getCurrentStandardOutContents() 没有显示任何内容。

输出:-

Output->

德布拉吉

最佳答案

您可能需要给子进程一些时间来工作。尝试添加一点延迟:

Spawn s = expectInit.spawn("/bin/sh");           
s.send("echo debraj\n");

Thread.sleep(200); // Pause for 0.2s

System.out.println("Output->"+s.getCurrentStandardOutContents());
s.expectClose();

关于java - Expectj - 获取在此 session 期间在 spawn 的标准输出上收到的所有内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6249057/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com