命令的 phpseclib-SSH2 流结果?
phpseclib-SSH2 stream results from command?
我正在使用 phpseclib 通过 ssh 连接到远程设备并下载文件。
这有效,完成后会显示已下载的文件列表。
但是我希望它在下载时显示每个文件名。
我使用的代码是:
$ssh = new Net_SSH2('192.168.0.1');
if (!$ssh->login('user', 'password')) {
exit('Login Failed');
}
function output($str) {
echo "$str";
}
$cmd = "getfiles";
$res = $ssh->exec($cmd, "output");
如果我使用 putty 和 SSH 进入远程设备,然后 运行 getfiles
它会在处理每个文件名时在新行上显示它。
phpseclib 似乎只显示最终结果,而不是实时进度。
有什么办法让它显示实时进度吗?
谢谢
我通过按如下方式更新输出函数来完成这项工作。
function output($str) {
flush(); ob_flush();
echo "$str<br>";
}
现在输出显示在新行上。
我正在使用 phpseclib 通过 ssh 连接到远程设备并下载文件。 这有效,完成后会显示已下载的文件列表。
但是我希望它在下载时显示每个文件名。
我使用的代码是:
$ssh = new Net_SSH2('192.168.0.1');
if (!$ssh->login('user', 'password')) {
exit('Login Failed');
}
function output($str) {
echo "$str";
}
$cmd = "getfiles";
$res = $ssh->exec($cmd, "output");
如果我使用 putty 和 SSH 进入远程设备,然后 运行 getfiles
它会在处理每个文件名时在新行上显示它。
phpseclib 似乎只显示最终结果,而不是实时进度。
有什么办法让它显示实时进度吗?
谢谢
我通过按如下方式更新输出函数来完成这项工作。
function output($str) {
flush(); ob_flush();
echo "$str<br>";
}
现在输出显示在新行上。