Vorrei avere accesso alle informazioni sullo stato di avanzamento da lftp. Attualmente sto usando il ricciolo in questo modo:
curl http://example.com/file -o file -L 2> download.log
Questo scrive le informazioni sull'avanzamento di curl nel file download.log, che posso seguire per ottenere progressi in tempo reale.
Ma lo stesso approccio non funziona con lftp, né con stdout né con stderr. Finisco con un file download.log vuoto, fino al completamento del trasferimento.
lftp -e 'get http://example.com/file;quit' 2> download.log
lftp -e 'get http://example.com/file;quit' 1> download.log
Quando non reindirizzo l'output, vedo i progressi sullo schermo. Quando eseguo il reindirizzamento dell'output, smetto di vedere i progressi sullo schermo, ma in download.log non viene visualizzato nulla. Dopo che il trasferimento del file è completo, vedo il risultato finale, in questo modo - ma niente prima:
97618627 bytes transferred in 104 seconds (913.1K/s)
Lftp sta facendo qualcosa di insolito con il suo output: stampare su schermo senza stampare su stdout / stderr? Esistono altri modi per acquisire l'output dello schermo oltre a reindirizzare stdout / stderr?