o progresso de download do wget na ordem reversa?

1

não tenho ideia do que aconteceu, mas de repente começou a mostrar a barra de progresso na ordem inversa ...

HTTP request sent, awaiting response... 200 OK
Length: 4102725632 (3.8G) [application/octet-stream]
Saving to: '*******.***'

-64% [================>................] -1,603,353,961 14.3K/s eta 2d 17h

em vez disso normalmente:

HTTP request sent, awaiting response... 200 OK
Length: 1913641 (1.8M) [application/pdf]
Saving to: 'InformationBrochure.pdf'

11% [===========>.....................] 216,000 19.7K/s eta 89s

Como posso alterá-lo de volta ao normal para aumentar a ordem?

EDIT: está mostrando desta forma apenas para o arquivo acima de 4gb, o windows 10 iso eu estou baixando .... para todos os outros downloads tudo é OK.  Qual é a razão por trás disso?

    
por Deval 13.08.2015 / 20:35

1 resposta

2

Isso parece um problema de estouro de inteiro. Meu palpite (sem ter olhado para o código) é que em sua plataforma específica, wget representa internamente o progresso do download e possivelmente o tamanho do arquivo como uma contagem de bytes (assinada) de 32 bits baixados.

Uma variável assinada de 32 bits irá envolver cerca de +2,15 bilhões, quando começará a contar a partir de -2,15 bilhões. Isso corresponde a um tamanho de arquivo de 2 GiB.

Se minha hipótese estiver correta, não há uma "correção" real para esse problema para você como usuário comum; o problema será exibido sempre que você estiver baixando um arquivo maior que 2.147.483.647 bytes.

pode ser que as versões de 64 bits do wget lidem melhor com a exibição de progresso para downloads grandes, já que o wraparound acontecerá em tamanhos de arquivo absurdamente grandes que você simplesmente não os encontrará. Por outro lado, nós costumávamos dizer isso sobre arquivos únicos multi-gigabytes, também ...

No lado positivo, isso deve ser um problema puramente estético. O download em si é quase certamente completamente não afetado por isso.

Supondo que você esteja executando uma versão recente do wget, recomendamos que você informe isso como um bug no wget rastreador de bugs do projeto para que possa ser corrigido. Certifique-se de incluir detalhes sobre seu hardware e sistema operacional; especificamente, se os binários da CPU, do SO e do wget (respectivamente) são de 32 bits ou 64 bits e o SO e a versão exatos que você está executando.

    
por 13.08.2015 / 20:57