Eu gostaria de ter acesso a informações de progresso do lftp. Atualmente, estou usando o curl assim:
curl http://example.com/file -o file -L 2> download.log
Isso grava as informações de progresso do curl no arquivo download.log, que eu posso personalizar para obter progresso em tempo real.
Mas a mesma abordagem não funciona com o lftp, com stdout ou stderr. Acabo com um arquivo download.log vazio, até a transferência ser concluída.
lftp -e 'get http://example.com/file;quit' 2> download.log
lftp -e 'get http://example.com/file;quit' 1> download.log
Quando não redireciono a saída, vejo progresso na tela. Quando redireciono a saída, paro de ver progresso na tela, mas nada aparece no download.log. Após a transferência do arquivo, vejo o resultado final, assim - mas nada antes:
97618627 bytes transferred in 104 seconds (913.1K/s)
O lftp está fazendo algo incomum com a saída - imprimir na tela sem imprimir no stdout / stderr? Existem outras maneiras de capturar a saída da tela além de redirecionar stdout / stderr?