Před 50 lety, 5. května 1974 v žurnálu IEEE Transactions on Communications, Vint Cerf a Bob Kahn popsali protokol TCP (pdf).
Bylo vydáno do češtiny přeložené číslo 717 týdeníku WeeklyOSM přinášející zprávy ze světa OpenStreetMap.
Byla vydána (Mastodon, 𝕏) nová stabilní verze 2.10.38 svobodné aplikace pro úpravu a vytváření rastrové grafiky GIMP (GNU Image Manipulation Program). Přehled novinek v oznámení o vydání a v souboru NEWS na GitLabu. Nový GIMP je již k dispozici také na Flathubu.
Google zveřejnil seznam 1220 projektů od 195 organizací (Debian, GNU, openSUSE, Linux Foundation, Haiku, Python, …) přijatých do letošního, již dvacátého, Google Summer of Code.
Na základě DMCA požadavku bylo na konci dubna z GitHubu odstraněno 8535 repozitářů se zdrojovými kódy open source emulátoru přenosné herní konzole Nintendo Switch yuzu.
Webový prohlížeč Dillo (Wikipedie) byl vydán ve verzi 3.1.0. Po devíti letech od vydání předchozí verze 3.0.5. Doména dillo.org již nepatří vývojářům Dilla.
O víkendu probíhá v Bostonu, a také virtuálně, konference LibrePlanet 2024 organizovaná nadací Free Software Foundation (FSF).
Nová vývojová verze Wine 9.8 řeší mimo jiné chybu #3689 při instalaci Microsoft Office 97 nahlášenou v roce 2005.
Coppwr, tj. GUI nástroj pro nízkoúrovňové ovládání PipeWire, byl vydán v nové verzi 1.6.0. Zdrojové kódy jsou k dispozici na GitHubu. Instalovat lze také z Flathubu.
Byla vydána dubnová aktualizace aneb nová verze 1.89 editoru zdrojových kódů Visual Studio Code (Wikipedie). Přehled novinek i s náhledy a animovanými gify v poznámkách k vydání. Vypíchnout lze, že v terminálu lze nově povolit vkládání kopírovaného textu stisknutím středního tlačítka myši. Ve verzi 1.89 vyjde také VSCodium, tj. komunitní sestavení Visual Studia Code bez telemetrie a licenčních podmínek Microsoftu.
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
killall wget
, protože si tak odstřelíš všechny wget
y, 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í.
#!/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
#!/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.
Tiskni Sdílej: