2013-05-06 15 views
10

私はFabric(Python)のようなライブラリを使って、リモートサーバー上でさまざまなタスクを実行しました。このライブラリを介してタスクを実行すると、アクションが発生したときにリモートサーバーから出力が得られます。たとえば、タスクがサーバ上でgit pullを実行している場合、その行の出力をそのまま出力します。PHP経由でSSH出力を「そのまま」出力できますか?

しかし、私はさまざまなPHP SSHライブラリとSSH2拡張モジュールを見ています。 1つの長い文字列で、すでに起こった後にコマンドの出力をすべて取得する方法しかないようです。タスクが実行されているときにリモートサーバーから出力を戻したいと思っています。これは可能ですか?すべてのは

http://php.net/manual/en/function.flush.php

答えて

10

は、この作業を手に入れたエコー後

Server::run('git pull origin master', function($output) 
{ 
    echo $output.PHP_EOL; 
}); 
+0

この回答を承認済みとマークしましょう。 – Tuanitim

+0

できれば質問も更新してください。 – Banago

0

あなたはflush()を呼び出すことができます。擬似コードでは、これは私が探しているものの一種です。ループでを使用して返されたストリームを読み取ることができます。ssh2_exec

+0

すべてが信頼できることが判明しましたが、試してみる価値があります –

関連する問題