abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 05:44 | Nová verze

    Unicode Consortium, nezisková organizace koordinující rozvoj standardu Unicode, oznámila vydání Unicode 17.0. Přidáno bylo 4 803 nových znaků. Celkově jich je 159 801. Přibylo 7 nových Emoji.

    Ladislav Hagara | Komentářů: 0
    včera 21:00 | IT novinky Ladislav Hagara | Komentářů: 1
    včera 18:33 | Nová verze

    Realtimová strategie Warzone 2100 (Wikipedie) byla vydána ve verzi 4.6.0. Podrobný přehled novinek, změn a oprav v ChangeLogu na GitHubu. Nejnovější verzi Warzone 2100 lze již instalovat také ze Snapcraftu a Flathubu.

    Ladislav Hagara | Komentářů: 2
    včera 12:22 | IT novinky

    Polské vývojářské studio CD Projekt Red publikovalo na Printables.com 3D modely z počítačové hry Cyberpunk 2077.

    Ladislav Hagara | Komentářů: 0
    včera 11:44 | Pozvánky

    Organizátoři konference LinuxDays 2025 vydali program a zároveň otevřeli registrace. Akce se uskuteční 4. a 5. října na FIT ČVUT v pražských Dejvicích, kde vás čekají přednášky, workshopy, stánky a spousta šikovných lidí. Vstup na akci je zdarma.

    Petr Krčmář | Komentářů: 6
    8.9. 22:00 | IT novinky

    Uživatelé komunikátoru Signal si mohou svá data přímo v Signalu bezpečně zálohovat a v případě rozbití nebo ztráty telefonu následně na novém telefonu obnovit. Zálohování posledních 45 dnů je zdarma. Nad 45 dnů je zpoplatněno částkou 1,99 dolaru měsíčně.

    Ladislav Hagara | Komentářů: 0
    8.9. 18:44 | Zajímavý článek

    Server Groklaw, zaměřený na kauzy jako právní spory SCO týkající se Linuxu, skončil před 12 lety, resp. doména stále existuje, ale web obsahuje spam propagující hazardní hry. LWN.net proto v úvodníku připomíná důležitost zachovávání komunitních zdrojů a upozorňuje, že Internet Archive je také jen jeden.

    🇵🇸 | Komentářů: 11
    8.9. 14:22 | Nová verze

    Jakub Vrána vydal Adminer ve verzi 5.4.0: "Delší dobu se v Admineru neobjevila žádná závažná chyba, tak jsem nemusel vydávat novou verzi, až počet změn hodně nabobtnal."

    Ladislav Hagara | Komentářů: 3
    8.9. 13:22 | IT novinky

    V Německu slavnostně uvedli do provozu (en) nejrychlejší počítač v Evropě. Superpočítač Jupiter se nachází ve výzkumném ústavu v Jülichu na západě země, podle německého kancléře Friedricha Merze otevírá nové možnosti pro trénování modelů umělé inteligence (AI) i pro vědecké simulace. Superpočítač Jupiter je nejrychlejší v Evropě a čtvrtý nejrychlejší na světě (TOP500). „Chceme, aby se z Německa stal národ umělé inteligence,“ uvedl na

    … více »
    Ladislav Hagara | Komentářů: 21
    7.9. 04:11 | Komunita

    V Berlíně probíhá konference vývojářů a uživatelů desktopového prostředí KDE Plasma Akademy 2025. Při té příležitosti byla oznámena alfa verze nové linuxové distribuce KDE Linux.

    Ladislav Hagara | Komentářů: 1
    Pro otevření více webových stránek ve webovém prohlížečí používám
     (84%)
     (7%)
     (2%)
     (3%)
     (3%)
     (2%)
    Celkem 159 hlasů
     Komentářů: 11, poslední 4.9. 16:12
    Rozcestník

    Dotaz: Přerušované stahování přes wget

    11.6.2006 21:45 mrw
    Přerušované stahování přes wget
    Přečteno: 319×
    Zdravím

    Dávám dohromady můj třetí skript v životě. Potřebuju aby wget x minut stahoval a y minut odpočíval a pak zase pokračoval x minut ve stahování až do stažení souboru.

    Částečně jsem se inspiroval v této diskuzi a sepsal následující skript. Pokusně tam mám krátkých 10s.

    #!/bin/bash

    while true

    do

    wget -c ftp://adresa.cz/nejakysoubor.pripona & sleep 10s

    killall -INT wget

    echo Preruseni

    sleep 5s

    done

    Smyslem je, aby se společně se stahováním spustilo odpočítávání času a to zabilo wget, pak se počkalo 5s a začal další cyklus.

    Přesto mně tento skript dělá psí kusy. Kdyby někdo věděl, jak na to, budu vděčný za radu. Děkuju. mrw

    Odpovědi

    11.6.2006 21:57 Michal Vyskočil | skóre: 60 | blog: miblog | Praha
    Rozbalit Rozbalit vše Re: Přerušované stahování přes wget
    No minimálně bych nepoužíval killall wget, protože si tak odstřelíš všechny wgety, ale po wget -c & si uložil hodnotu proměnné $! a zabíjel konkrétní proces. Dále se obecně nemůžeš spolehnout na to, že se ti proces po SIGINT ukončí, takže musíš testovat jeho existenci (potencionální race condition).

    No a také postrádám podmínku pro ukončení cyklu, po dotažení souboru.

    BTW: nebylo by lepší použít --limit-rate? Imho se snažíš obejít nějaký omezovač připojení.
    When your hammer is C++, everything begins to look like a thumb.
    11.6.2006 21:58 Marek Pasovsky | skóre: 32
    Rozbalit Rozbalit vše Re: Přerušované stahování přes wget
    co to znamena 'psi kusy'?

    wget sype svuj vystup na obrazovku? to se da 'lecit' treba parametrem '-o'

    Marek
    If you don't understand or are scared by any of the above ask your parents or an adult to help you.
    11.6.2006 22:07 mrw
    Rozbalit Rozbalit vše Re: Přerušované stahování přes wget
    První cyklus stahování proběhne v pořádku a pak přestane čekání fungovat, v cyklu se vždy spustí wget a pak jej to okamžitě zabije a tak furt dokola... slouží znak & k současnému spuštění dvou příkazů? nejspíš ano, ale nefunguje to podle mých představ.

    To že wget něco vypisuje na obrazovku mně zdaleka nevadí...spíš naopak

    Děkuju všem za odpovědi...
    12.6.2006 08:15 petr
    Rozbalit Rozbalit vše Re: Přerušované stahování přes wget
    Co takhle SIGSTOP a SIGCONT ?
    12.6.2006 11:34 honzaB | skóre: 10 | Praha
    Rozbalit Rozbalit vše Re: Přerušované stahování přes wget
    Nevím teda přesně k čemu to bude, ale tohle by mělo fungovat:
    #!/bin/bash
    
    if [[ -z $1 ]]; then
            echo "Parametr by mel byt adresa ke stazeni."
            exit 1
    fi
    
    function exitX {
            kill -9 $PID
            exit 1
    }
    
    trap exitX SIGINT
    
    while true; do
            wget -c "$1" &
            PID=$!
            # 5 vterin stahuje
            echo "Downloading... ($PID)" 
            sleep 5
            # posle SIGSTOP
            kill -19 $PID
            if [ $? -ne 0 ]; then
                    kill -9 $PID
            fi
            # 5 vterin ceka
            echo "Waiting..."
            sleep 5
    done
    
    12.6.2006 11:49 mrw
    Rozbalit Rozbalit vše Re: Přerušované stahování přes wget
    Teda, tak podrobnou odpoveď jsem nečekal. Moc a moc děkuju, hned jak přijdu z práce domů, tak to vyzkouším.

    Na oplátku se pochopitelně budu dál snažit přispívat do diskuze tím, co už umím a co jsem se stačil naučit. Mám obzvlášť pochopení pro začátečníky, protože když jsem před 4 lety nainstaloval RedHat 6.5 a neměl jsem žádnou příručku ani solidní přístup na internet, tak jsem se cítil často....no....beznadějně ztracený.

    mrw
    12.6.2006 15:51 honzaB | skóre: 10 | Praha
    Rozbalit Rozbalit vše Re: Přerušované stahování přes wget
    Příště napiš do otázky taky k čemu to potřebuješ. Ještě hodněkrát se budeš divit, že existuje spousta jiných způsobů jak problémy řešit, než ten konkrétní, na který se zrovna ptáš..

    To jenom protože mě opravdu nenapadá použití pro tenhle skriptík :-)
    Jiří Němec avatar 12.6.2006 18:07 Jiří Němec | skóre: 22 | blog: BluPix | Horní Smrčné
    Rozbalit Rozbalit vše Re: Přerušované stahování přes wget
    Ten program z té původní diskuze jsem použil jen asi dvakrát. Po tom, co mi ten program stáhl špatně 600 MB soubor, jsem to zavrhnul. Wget je sice dobrý program, ale není dokonalý, taky občas něco naváže špatně. Možná dnes bych to kontroloval torrentem. Ten program mám vystavený na koleji: bluget.c bude to tam možná jen do konce týdne. Je to experimenální kód, tak od toho moc nečekejte. Je to jeden z mých prvních prográmků, tak se nedivte že jsem tenkrát nevěděl jak se v C zpracovávají řetězce a parametry.
    Spock: "Logic, logic, logic. Logic is the beginning of wisdom, not the end.
    12.6.2006 20:37 Jan Martinek | skóre: 43 | blog: johny | Brno
    Rozbalit Rozbalit vše Re: Přerušované stahování přes wget
    Myslím, že všechna řešení založená na tom, že se pustí wget a pak se tomu chudákovi posílají různé stopovací či zabíjecí signály jsou tak trochu podivné. Dá se to napsat i bez pouštění externího programu:
    #!/usr/bin/env python
    import urllib2, time, sys, os
    delay = 2
    burst_time = 12
    url = sys.argv[1]
    filename = os.path.basename(url)
    response = urllib2.urlopen(url)
    fw = open(filename, 'w')
    stamp = time.time()
    downloaded = 0
    while True:
        data = response.read(65536)
        if not data: break
        fw.write(data)
        downloaded += len(data)
        print '%d bytes downloaded' %downloaded
        if time.time() - stamp > burst_time:
            print 'Waiting ...'
            time.sleep(delay)
            stamp = time.time()
    print 'Done.'
    
    Skriptík zvládá ftp i http a stahuje po 64kb blocích (velikost lze upravit). Občas, asi tak po dvanácti sekundách, se mezi jednotlivými bloky na dvě sekundy trochu prospí. Ten poměr jsem převzal od toho člověka v minulé diskusi, co 30 minut stahoval a 5 minut čekal. V tom programu sice nemám časování naprosto přesné, ale je to schválně - přece nebudu čekat, když mi zrovna teče paket, když zapisuju do souboru nebo tak něco.

    Stejně mi ale přijde, že wget --limit-rate dělá úplně to stejné, jak už tu někdo psal.
    Jiří Němec avatar 12.6.2006 21:04 Jiří Němec | skóre: 22 | blog: BluPix | Horní Smrčné
    Rozbalit Rozbalit vše Re: Přerušované stahování přes wget
    Konečně správný způsob. Další systémový způsob by možná byl nějaký shaper. Otázka k čemu to má sloužit. Já jsem prostě začal tahat jistou nižší rychostí a tak jsem byl schopný přenést i více jak 6GB měsíčně na pomalém GPRS a nestabilním telefonu. Ten můj program z předchozí diskuze jsem zavrhnul.

    Když vidím váš kód, musím uznat, že python je opravdu krásný a mocný jazyk.
    Spock: "Logic, logic, logic. Logic is the beginning of wisdom, not the end.

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.