Laravel无法执行多个ssh命令?

时间:2014-11-03 18:55:26

标签: laravel ssh laravel-4 phpseclib

我必须连接到ssh并一个接一个地执行两个不同的命令。

在Laraver文档中,我看到可以将带有命令的数组传递给SSH :: run(),当然我也试过了。

但是,由于非常有趣的原因,它失败并显示一条消息" 未定义的偏移量:1 "。

一个接一个地执行SSH :: run()两次,建立两个连接,这也是一个问题的原因。

知道什么可能是个问题?

它在这里指出我的失败点:

... /供应商/ phpseclib / phpseclib / phpseclib /净/ SSH2.php

2988 $ this-> window_size_server_to_client [$ channel] - = strlen($ response);

P.S。我还尝试将命令与&&和等等。但同样的错误。

2 个答案:

答案 0 :(得分:0)

我没有提到,我是连接到Windows PowerShell机器上的ssh服务器。所以&& (虽然在文档的某处提到过)并且`n没有作为换行符,新命令...

但&#34 ;;"那样。

我做到了..

答案 1 :(得分:0)

未经测试,但这应该有效:

SSH::run($commands1, function($line1)
{
   SSH::run($commands2, function($line2)
   {
   });
});