Parece-me que está armazenando em buffer sua saída. Você pode tentar o unbuffer esperar script ( página man ).
Eu gostaria de ter acesso a informações sobre o 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 seguir para obter progresso em tempo real.
Mas a mesma abordagem não funciona com lftp, seja com stdout ou stderr. Acabo com um arquivo download.log vazio, até que a transferência esteja completa.
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 eu redireciono a saída, paro de ver o progresso na tela, mas nada aparece no download.log. Após a conclusão da transferência de arquivos, vejo o resultado final, como este - mas nada antes:
97618627 bytes transferred in 104 seconds (913.1K/s)
O lftp está fazendo algo incomum com sua saída - imprimir na tela sem imprimir em stdout / stderr? Existem outras maneiras de capturar saída de tela do que redirecionar stdout / stderr?
Parece-me que está armazenando em buffer sua saída. Você pode tentar o unbuffer esperar script ( página man ).
Verifique as variáveis de domínio xfer :
set xfer:log 1
set xfer:eta-period 5 # every 5 seconds
set xfer:rate-period 20 # average rate
colocará informações de transferência de registros em ~ / .lftp / transfer_log
Não tenho certeza se você pode alterar o destino do arquivo de log, no entanto
Veja a configuração padrão "log: file / xfer" inserindo o comando set
em lftp.
Saída possível:
set log:file/xfer /home/USERNAME/.local/share/lftp/transfer_log
Você pode mudar isso de formas diferentes, claro.
lftp -c 'open -e "set log:file/xfer /home/USERNAME/myown.log; mget *.csv; bye" -u uname,psswd 172.16.100.101' >> $log
tente thisto capturar informações de progresso: lftp sftp: // $ SFTPUSER: $ SFTPPASS @ $ SFTPHOST -e "cd $ Directory; mget $ SFTPFILE; bye" > $ SFTPLOG 2 > & 1