Phpseclib: частичная загрузка файла

Каков наилучший способ (с помощью phpseclib), чтобы загрузить частичный файл. У меня есть файл журнала, в который постоянно добавляются данные. Я хотел бы периодически подключаться к удаленному серверу и загружать последнюю порцию без загрузки всего файла каждый раз. Rsync был бы идеален, но он не установлен на каждом сервере. В настоящее время я могу сделать это с помощью ряда команд, в которых я запишу номер последней строки, чем использую tail (с номером последней строки) и передам его в файл tmp. SCP файл tmp на мою локальную машину, а затем удалить файл tmp.

Однако этот метод слишком сложен и навязчив (требует создания / удаления файла на удаленном компьютере). Кроме того, я не могу установить что-либо на удаленной машине, и они могут отличаться (BSD, Linux, Solaris и т. Д.).

0

Решение

Определение функции для Net_SFTP :: get выглядит следующим образом:

function get($remote_file, $local_file = false, $offset = 0, $length = -1)

Так что, возможно, вы могли бы сделать $sftp->get('/path/to/file.log', false, $last_recorded_size) или что-то.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]