Fórum Ubuntu CZ/SK

Ubuntu pro osobní počítače => Obecná podpora => Téma založeno: Lokysek 16 Února 2014, 20:35:53

Název: Wget - Stahování jednoho sobouru "dokola"
Přispěvatel: Lokysek 16 Února 2014, 20:35:53
Ahoj,
jsem naprostý nováček v linuxu, proto prosím o schovívavost :-)
Potřebuju vyřešit pro mne velký, ale možná je to problém malý, jen na něj jdu špatně.
Mám PC kde poběží prezentace z videa stále dokola.
Video je staženo vždy přes :
wget ftp://jmeno:heslo@hosting/cesta/video.mp4
Mám nastaven cron aby se tato akce opakovala 2x denně, aby si vždy stáhl aktuální video.
Problém je s nedostatečným hostingem odkud se videa stahují ( ne, opravdu nejde přikoupit dostatek místa), takže video je tam vždy nahráno, PC si ho stáhne a přehrává, potom je video smazáno.
Problém nastává zde:
pokud nastavím na wget příkazu -O video.mp4, aby se video na HDD vždy přepsalo nově stáhlým, tak když wget narazí na to, že video na hostingu není, tak to, co je aktuálně uloženo na HDD stejně smaže (přepíše) souborem o nulové velikosti video.mp4.

Prosím tedy, o nějakou radu, bohužel mne hodně tlačí čas na vyřešení této situace, a googlení zatím moc nepomohlo.

PS: nemusím se držet za každou cenu wgetu.

Díky moc
Název: Re:Wget - Stahování jednoho sobouru "dokola"
Přispěvatel: Dano V 16 Února 2014, 22:02:31
vyskúšaj to dať do skriptu čo bude cron spúšťať
Citace: http://www.thegeekstuff.com/2009/09/the-ultimate-wget-download-guide-with-15-awesome-examples/
7. Test Download URL Using wget –spider

When you are going to do scheduled download, you should check whether download will happen fine or not at scheduled time. To do so, copy the line exactly from the schedule, and then add –spider option to check.

Kód: [Vybrat]
$ wget --spider DOWNLOAD-URL
If the URL given is correct, it will say

Kód: [Vybrat]
$ wget --spider download-url
Spider mode enabled. Check if remote file exists.
HTTP request sent, awaiting response... 200 OK
Length: unspecified [text/html]
Remote file exists and could contain further links,
but recursion is disabled -- not retrieving.
This ensures that the downloading will get success at the scheduled time. But when you had give a wrong URL, you will get the following error.

Kód: [Vybrat]
$ wget --spider download-url
Spider mode enabled. Check if remote file exists.
HTTP request sent, awaiting response... 404 Not Found
Remote file does not exist -- broken link!!!
You can use the spider option under following scenarios:

    Check before scheduling a download.
    Monitoring whether a website is available or not at certain intervals.
    Check a list of pages from your bookmark, and find out which pages are still exists.
Najprv čekne potom ak ok=sťahuje ak súbor chýba=nesťahuje. Na skripty nie som. Mohlo by to takto fungovať. Niekto ma opraví, ak som napísal niečo zle ;)
Název: Re:Wget - Stahování jednoho sobouru "dokola"
Přispěvatel: GdH 16 Února 2014, 22:39:25
Lepší by tedy bylo, kdyby se původní soubor přepsal až tehdy, když stažení proběhne celé v pořádku. Na straně klienta místo je? Co nějak takhle:
Kód: [Vybrat]
wget ftp://jmeno:heslo@hosting/cesta/video.mp4 -O /tmp/video.mp4 && mv /tmp/video.mp4 ~/video.mp4 || rm -f /tmp/video.mp4?
Cesty jsou samozřejmě na tobě.
Název: Re:Wget - Stahování jednoho sobouru "dokola"
Přispěvatel: Lokysek 17 Února 2014, 19:35:38
Lepší by tedy bylo, kdyby se původní soubor přepsal až tehdy, když stažení proběhne celé v pořádku. Na straně klienta místo je? Co nějak takhle:
Kód: [Vybrat]
wget ftp://jmeno:heslo@hosting/cesta/video.mp4 -O /tmp/video.mp4 && mv /tmp/video.mp4 ~/video.mp4 || rm -f /tmp/video.mp4?
Cesty jsou samozřejmě na tobě.
Dokonalá práce!!!! Funguje výborně!!! Strašně moc Ti děkuji.

VYŘEŠENO