получить идентификатор экрана через ssh в php - PullRequest
0 голосов
/ 31 мая 2018

Я пытаюсь запустить длинную команду с удаленного сервера на php, используя screen, но я хочу убедиться, что экран завершен в конце команды.Поэтому я пытаюсь использовать «echo $ STY», чтобы получить идентификатор экрана и убить его таким образом.по какой-то причине это не работает.Любые идеи:

ssh2_exec($conn, 'screen');
    $getscreen =ssh2_exec($conn, 'echo $STY');
    stream_set_blocking($getscreen, true);
    $stream_outA = ssh2_fetch_stream($getscreen, SSH2_STREAM_STDIO);
    $valA =fgets($stream_outA,160);
    $scrnids =explode('.',$valA);
    var_dump($scrnids);
    $killcommand = 'screen -X -S '.$scrnids[0].' kill';
       $stream = ssh2_exec($conn, $command);
       .....

    ssh2_exec($conn, $killcommand); 
    ssh2_exec($conn, 'exit'); //just in case
    unset($conn);

Дамп Вар просто выводит:

 array (size=1)
  0 => string '
  ' (length=1)
...