2016-09-20 35 views
0

我正在嘗試使用Symfony進程組件執行多個命令,但第二個命令未被處理。我究竟做錯了什麼?Symfony進程組件中的多個命令

 $process = new Process('sshpass -p password ssh [email protected]'); 
     $process->run(); 
     if (!$process->isSuccessful()) { 
      throw new ProcessFailedException($process); 
     } 
     echo $process->getOutput(); 

     $process1 = new Process("sudo reboot -f"); 
     $process1->run(); 
     if (!$process1->isSuccessful()) { 
      throw new ProcessFailedException($process1); 
     } 
     echo $process1->getOutput(); 

回答

0

進程是隔離的,第二個將不會在您打開代碼頂部的ssh會話內執行。

你必須只使用一個進程待辦事項。

+0

謝謝。我可以用這個'$ process = new Process('sshpass -p password ssh user @ host sudo reboot -f');'來實現我想要的結果。 –

+0

這是對的,但是如何在同一個控制器中使用Symfony Process運行多個命令? –