Я использую phpseclib (Net_SSH2) для запуска команды с PHP. Проблема в том, что вывод кажется обрезанным на более длинных строках. Это проблема, потому что я использую PHP для поиска определенных деталей в каждой строке (и большая часть этих деталей теперь обрезана).
Вот мой текущий код:
set_include_path(__DIR__ . '/phpseclib');
include("Net/SSH2.php");
$ssh = new Net_SSH2('example.com', 22);
if (!$ssh->login('testing', "123456")) exit('Login Failed');
$shell = $ssh->exec('ps aux');
echo $shell;
Вот что должно звучать:
267745 4370 0.0 0.1 7148 2220 - SNJ 21:56 0:00.02 sh /home/public/crons/syncing.sh
267745 86056 0.0 0.0 4240 1600 - SNCJ 22:15 0:00.00 sleep 10
267745 37349 0.0 0.1 7864 3512 14 SNsJ 16:36 0:01.14 -bash (bash)
267745 86089 0.0 0.1 6992 2228 14 RN+J 22:15 0:00.00 ps aux
Вот что отзывается:
267745 4370 0.0 0.1 7148 2220 - SNJ 21:56 0:00.02 sh /home/public/cron
267745 86056 0.0 0.0 4240 1600 - SNCJ 22:15 0:00.00 sleep 10
267745 37349 0.0 0.1 7864 3512 14 SNsJ 16:36 0:01.14 -bash (bash)
267745 86099 0.0 0.1 6992 2228 - RNsJ 22:15 0:00.88 ps aux
Это проблемная строка в приведенном выше примере:
267745 4370 0.0 0.1 7148 2220 - SNJ 21:56 0:00.02 sh /home/public/crons/syncing.sh
Что могло бы вызвать это?
В настоящее время я использую phpseclib 1.0.11.






Цитируя https://github.com/phpseclib/phpseclib/issues/1385,
Seems like
$ssh->setWindowColumns(...)might do what you want. By default window columns is 80, unless set by you.