【问题标题】:phpseclib callback after exec执行后的phpseclib回调
【发布时间】:2017-07-29 09:05:38
【问题描述】:

从我的网站(使用 symphony 3.3)我使用 $ssh->exec 要求其他服务器对视频进行转码(使用 ffmpeg)。 我工作很好,但我有问题。

转码操作后,我从第二台服务器获取关于ffmpeg生成的日志文件中转码的信息(使用$sft->get)(在CLI末尾使用>)和想在我的网页上看到结果。

问题是:当我调用 $sft->get 来获取信息时,过程没有完成(可能需要几分钟)。 那么网站如何知道该过程在第二台服务器上完成了呢? 我尝试 $ssh->exec( $cli, 'callbak' ); 没有成功(回调工作但来得太早)。

如果有人了解我的问题并知道解决方案,请告诉我! phpseclib 是一个非常好的包,我想保留它。 最好的问候

文森特

【问题讨论】:

    标签: ssh ffmpeg phpseclib


    【解决方案1】:

    如果你这样做,你可能会取得更大的成功:

    $ssh->write("[command]\n");
    $ssh->read('[prompt]');
    
    $ssh->get('/path/to/file');
    

    $ssh->read 将阻塞,直到它读取标准输出中的提示。 IE。它会一直阻塞直到[command] 完成执行。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-05-20
      • 1970-01-01
      • 2018-03-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-08-16
      相关资源
      最近更新 更多