GNU/Linux >> Znalost Linux >  >> Linux

Obnovte částečně stažený soubor pomocí Wget v Linuxu

Jak se vypořádáte s částečně staženými soubory kvůli pomalé rychlosti připojení k internetu? Tento krátký tutoriál vysvětluje, jak obnovit částečně stažený soubor pomocí příkazu wget v Linuxu.

Onehdy jsem testoval FreeTube , desktopový přehrávač YouTube s otevřeným zdrojovým kódem v mém desktopu Arch Linux Linux. Pokusil jsem se stáhnout nejnovější verzi FreeTube z GitHubu pomocí wget příkaz. Kvůli nízké rychlosti internetu se proces stahování každých několik minut ukončuje. Zde je příkaz wget, který jsem použil ke stažení tohoto souboru.

$ wget https://github.com/FreeTubeApp/FreeTube/releases/download/v0.1.3-beta/FreeTube-linux-x64.tar.xz

Ukázkový výstup:

--2018-03-09 15:41:44-- https://github.com/FreeTubeApp/FreeTube/releases/download/v0.1.3-beta/FreeTube-linux-x64.tar.xz
Loaded CA certificate '/etc/ssl/certs/ca-certificates.crt'
Resolving github.com (github.com)... 192.30.253.113, 192.30.253.112, 64:ff9b::c01e:fd70, ...
Connecting to github.com (github.com)|192.30.253.113|:443... connected.
HTTP request sent, awaiting response... 302 Found
Location: https://github-production-release-asset-2e65be.s3.amazonaws.com/123220152/39a2c92c-2277-11e8-8ca4-895487b6ddb0?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIWNJYAX4CSVEH53A%2F20180309%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20180309T101016Z&X-Amz-Expires=300&X-Amz-Signature=bf0fcb4643f0719239e3a006c9fbc055b6b9805e6ef03dcfc27334d18fdf994c&X-Amz-SignedHeaders=host&actor_id=0&response-content-disposition=attachment%3B%20filename%3DFreeTube-linux-x64.tar.xz&response-content-type=application%2Foctet-stream [following]
--2018-03-09 15:41:47-- https://github-production-release-asset-2e65be.s3.amazonaws.com/123220152/39a2c92c-2277-11e8-8ca4-895487b6ddb0?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIWNJYAX4CSVEH53A%2F20180309%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20180309T101016Z&X-Amz-Expires=300&X-Amz-Signature=bf0fcb4643f0719239e3a006c9fbc055b6b9805e6ef03dcfc27334d18fdf994c&X-Amz-SignedHeaders=host&actor_id=0&response-content-disposition=attachment%3B%20filename%3DFreeTube-linux-x64.tar.xz&response-content-type=application%2Foctet-stream
Resolving github-production-release-asset-2e65be.s3.amazonaws.com (github-production-release-asset-2e65be.s3.amazonaws.com)... 52.216.225.200, 64:ff9b::34d8:e1c8
Connecting to github-production-release-asset-2e65be.s3.amazonaws.com (github-production-release-asset-2e65be.s3.amazonaws.com)|52.216.225.200|:443... connected.
HTTP request sent, awaiting response... 206 Partial Content
Length: 39318740 (37M), 24626833 (23M) remaining [application/octet-stream]
Saving to: ‘FreeTube-linux-x64.tar.xz’

FreeTube-linux-x64. 48%[+++++++=> ] 18.04M 4.63KB/s in 3m 6s

2018-03-09 15:49:59 (22.2 KB/s) - Read error at byte 18921544/39318740 (Error in the pull function.). Retrying.

--2018-03-09 15:50:00-- (try: 2) https://github-production-release-asset-2e65be.s3.amazonaws.com/123220152/39a2c92c-2277-11e8-8ca4-895487b6ddb0?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIWNJYAX4CSVEH53A%2F20180309%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20180309T101016Z&X-Amz-Expires=300&X-Amz-Signature=bf0fcb4643f0719239e3a006c9fbc055b6b9805e6ef03dcfc27334d18fdf994c&X-Amz-SignedHeaders=host&actor_id=0&response-content-disposition=attachment%3B%20filename%3DFreeTube-linux-x64.tar.xz&response-content-type=application%2Foctet-stream
Connecting to github-production-release-asset-2e65be.s3.amazonaws.com (github-production-release-asset-2e65be.s3.amazonaws.com)|52.216.225.200|:443... connected.
HTTP request sent, awaiting response... 403 Forbidden
2018-03-09 15:50:04 ERROR 403: Forbidden.

Zkontroloval jsem velikost stahovaného souboru.

$ ls -lh FreeTube-linux-x64.tar.xz 
-rw-r--r-- 1 sk users 19M Mar 9 15:44 FreeTube-linux-x64.tar.xz

No, skutečná velikost FreeTube je kolem 38 MB , ale mám zatím jen 19M.

Znovu jsem spustil příkaz Wget v naději, že obnoví částečně stažený soubor, ale nestalo se tak. Wget začal stahovat soubor od začátku a po několika minutách jsem dostal stejnou chybu. Bez ohledu na to, kolikrát jsem se pokusil tento soubor stáhnout, úloha stahování se po několika minutách přerušovala.

Obnovit částečně stažený soubor pomocí wget

Po několika hledáních na Googlu a procházení wget manuálu, zjistil jsem, že existuje možnost obnovit částečně stažené soubory pomocí příkazu wget.

Chcete-li obnovit částečně stažený soubor, přejděte do umístění, kde částečně stažený soubor existuje, a použijte -c nebo --continue pomocí příkazu wget, jak je uvedeno níže.

$ wget -c https://github.com/FreeTubeApp/FreeTube/releases/download/v0.1.3-beta/FreeTube-linux-x64.tar.xz

Nebo,

$ wget --continue https://github.com/FreeTubeApp/FreeTube/releases/download/v0.1.3-beta/FreeTube-linux-x64.tar.xz

Nyní Wget začal stahovat soubor z místa, kde byl ponechán při předchozím pokusu. -c nebo --continue bude pokračovat v získávání částečně staženého souboru. To bude docela užitečné, když chcete dokončit stahování zahájené předchozí instancí Wgetu nebo jiným programem.

Mějte prosím na paměti, že pokud je v aktuálním adresáři soubor se stejným názvem, Wget bude předpokládat, že se jedná o první část vzdáleného souboru, a požádá server, aby pokračoval v načítání od offsetu rovného délce lokálního souboru. soubor. Takže se ujistěte, že jste smazali všechny ostatní částečně stažené soubory a ponechali si původní soubor, který chcete stáhnout.

Další podrobnosti viz wget manuálové stránky.

$ man wget

Nebo,

$ wget --help

Související čtení:

  • Jak obnovit částečně přenesené soubory přes SSH pomocí Rsync

Linux
  1. Jak zjistit, zda je soubor stahován pomocí Wget?

  2. Použití příkazu Linux Basename ve skriptech Bash

  3. Jak stáhnout soubor z URL v Linuxu

  1. 5 příkladů příkazů Wget ke stažení souborů v Linuxu.

  2. Jak rozdělit iso nebo soubor pomocí příkazu „split“ v Linuxu

  3. wget:název staženého souboru

  1. Spolupracujte na souboru pomocí rozdílu a opravy Linuxu

  2. Jak vytvořit soubor v Linuxu pomocí terminálu/příkazového řádku

  3. Použití rz a sz pod linuxovým shellem