
he leídoestepregunta y su respuesta, pero no responden a mi pregunta.
El script de shell es este:
let total=$(lftp -f lftp-script-count.txt | wc -l)-2
lftp -f lftp-script.txt |
while read word word2 filename
do
if [ "$word" = Transferring ]
then let count=count+1
let percent=count*100/total
echo -e "XXX\n$percent\nDownloading $filename\nXXX"
fi
done |
whiptail --title lftp --gauge progress 10 60 0
Ellftp-scrip-count.txtEl script lftp funciona bien:
debug 10
set ssl:verify-certificate no
open ...
user ... ...
cd ...
ls -R .
Ellftp-scrip-count.txtEl script lftp funciona lento (pero funciona con seguridad, aunque me encantaría que funcionara más rápido) y el progreso no llega al látigo:
set ssl:verify-certificate no
open ...
user ...
cd ...
mirror -P=10 . lftp-works --exclude-glob=node_modules
quit
El resultado es que se muestra la barra de progreso, pero permanece en 0% hasta el final, aunque se descargaron los 251 MB completos. Si cambio el tamaño de la ventana del terminal, la pantalla del látigo no se vuelve a pintar.
Cuando llega al final de la descarga, la ventana de la barra de progreso desaparece.
Me parece que el porcentaje que muestran los simples lftp -f lftp-script.txt
no es global. La salida de este comando contiene, además del porcentaje, cosas como esta:
- Esperando una respuesta...
- Recibir datos/TLS
- Realizando conexión de datos...
- Recibiendo información...
Ejemplo:
Mi pregunta es:¿Cómo puedo hacer que la barra de progreso muestre bien el progreso?
¿Existe otro cliente CLI FTP que muestre el progreso y sea bueno para mis requisitos como se ve en los scripts lftp que se muestran arriba?
Gracias.
Actualización 1
Quedan 2 cuestiones pendientes:
- Sería fantástico si pudiera mostrar el progreso de la operación en relación con la cantidad total de archivos que se copiarán, no todos los archivos disponibles para copiar, porque uso
--only-newer
. - Teniendo (1) en mente, sería interesante saber por qué
--only-newer
tiene la misma velocidad que sin él, cuando el directorio ya está completamente descargado. Si pudiera acelerar el proceso sería genial.