首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >expectJ -从spawn.send()读取InputStream

expectJ -从spawn.send()读取InputStream
EN

Stack Overflow用户
提问于 2013-03-07 23:32:01
回答 1查看 844关注 0票数 0

使用下面的代码,我想从spawn.send("ls | grep *.dat\n");中读取InputStream。我的类实现了Spawnable和它的方法getStdout(),但是不知道如何使用它。ExpectJ文档说:getStdout() -获取一个可以读取产卵的标准输出的流。但这并没有让我走得更远。

代码语言:javascript
复制
    private void expectC() throws IOException, TimeoutException, ExpectJException, InterruptedException {   
        ExpectJ expectJ = new ExpectJ();
        Spawn spawn = expectJ.spawn("192.168.1.60", 22, "login", "pass");
        spawn.send("ls | grep *.dat\n");
        spawn.expectClose();
}
EN

回答 1

Stack Overflow用户

发布于 2013-04-02 19:59:30

代码语言:javascript
复制
    ExpectJ ex = new ExpectJ(5);
    Spawn spawn = ex.spawn(new SshSpawn("192.168.56.101", 22, "alice", "password"));
    String command = "ls | grep dat \n";
    spawn.send(command);
    try{
        spawn.expectClose();
    }catch(Exception e){}
    String lsResults = spawn.getCurrentStandardOutContents().split("grep dat")[2];
    String[] lsRows = lsResults.split("\r\n"); //remove the 1st and the last
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15275146

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档