Jean-Baptiste Mardelle se v příspěvku na blogu rozepsal o novinkám v nejnovější verzi 25.12.0 editoru videa Kdenlive (Wikipedie). Ke stažení také na Flathubu.
OpenZFS (Wikipedie), tj. implementace souborového systému ZFS pro Linux a FreeBSD, byl vydán ve verzi 2.4.0.
Kriminalisté z NCTEKK společně s českými i zahraničními kolegy objasnili mimořádně rozsáhlou trestnou činnost z oblasti kybernetické kriminality. V rámci operací OCTOPUS a CONNECT ukončili činnost čtyř call center na Ukrajině. V prvním případě se jednalo o podvodné investice, v případě druhém o podvodné telefonáty, při kterých se zločinci vydávali za policisty a pod legendou napadeného bankovního účtu okrádali své oběti o vysoké finanční částky.
Na lepší pokrytí mobilním signálem a dostupnější mobilní internet se mohou těšit cestující v Pendolinech, railjetech a InterPanterech Českých drah. Konsorcium firem ČD - Telematika a.s. a Kontron Transportation s.r.o. dokončilo instalaci 5G opakovačů mobilního signálu do jednotek Pendolino a InterPanter. Tento krok navazuje na zavedení této technologie v jednotkách Railjet z letošního jara.
Rozšíření webového prohlížeče Urban VPN Proxy a další rozšíření od stejného vydavatele (např. 1ClickVPN Proxy, Urban Browser Guard či Urban Ad Blocker) od července 2025 skrytě zachytávají a odesílají celé konverzace uživatelů s AI nástroji (včetně ChatGPT, Claude, Gemini, Copilot aj.), a to nezávisle na tom, zda je VPN aktivní. Sběr probíhá bez možnosti jej uživatelsky vypnout a zahrnuje plný obsah dotazů a odpovědí, metadata relací i
… více »QStudio, tj. nástroj pro práci s SQL podporující více než 30 databází (MySQL, PostgreSQL, DuckDB, QuestDB, kdb+, …), se stal s vydáním verze 5.0 open source. Zdrojové kódy jsou k dispozici na GitHubu pod licencí Apache 2.0.
Byla vydána nová verze 259 správce systému a služeb systemd (Wikipedie, GitHub).
Cloudflare Radar poskytuje aktuální informace o globálním internetovém provozu, útocích nebo trendech. Publikován byl celkový přehled za rok 2025. Globální internetový provoz vzrostl v roce 2025 o 19 %.
Správní rada americké mediální skupiny Warner Bros. Discovery (WBD) podle očekávání odmítla nepřátelskou nabídku na převzetí od firmy Paramount Skydance za 108,4 miliardy dolarů (2,25 bilionu Kč). Paramount podle ní neposkytl dostatečné finanční záruky. Akcionářům proto doporučuje nabídku od Netflixu.
Na WhatsAppu se šíří nový podvod, který ovšem vůbec nevypadá jako hackerský útok. Žádná krádež hesla. Žádné narušení zabezpečení. Žádné zjevné varovné signály. Místo toho jsou lidé trikem donuceni, aby útočníkům sami poskytli přístup, a to pouhým provedením toho, co vypadá jako běžný ověřovací krok. Bezpečnostní experti Avastu tento nový typ útoku nazývají ghostpairing, protože útočníci si při něm tiše vytvářejí „zařízení duchů“, které žije uvnitř vašeho účtu.
Tak jsem dneska našel nějaké odkazy na stahování přes úložiště http://bagruj.cz. Je tam sice captcha, ale jinak to jede rychle, čekací dobu jsem měl vždy 15 sekund, takže jsem si udělal další stahovací skriptík.
Asi k tomu není co dodat, část kódu jsem zkopíroval z down-rapid, část z down-megaupload.
UPDATE 2009/01/10: Tak jsem udělal dvě úpravy. První úprava je ukončení skriptu, pokud skript z nějakého důvodu nedokáže získat URL ke stahování. Druhá úprava mění chování při zadávání captcha kódu a měření čekací doby. Po získání URL captcha se zjistí aktuální čas, dále se stáhne a zobrazí captcha. Na promptu pro čtení captcha kódu se zobrazí i cesta captcha obrázku-pokud by se zobrazily dva captcha obrázky a prompty, tak je těžké identifikovat, který prompt patří ke kterému obrázku, takže zobrazením cesty v promptu bude identifikace jednodušší (gqview, nebo jiný prohlížeč by měl cestu ke captcha obrázku také zobrazovat). Když se přečte captcha kód, tak se zjistí aktuální čas. Pokud již vypršela čekací doba, pokračuje se stažením souboru. Pokud by náhodou uživatel dokázal zadat captcha kód ještě před koncem čekací doby, skript počká zbytek doby a pak se spustí stahování. A měl jsem tam chybku s odpočítáváním-teď už by to mělo odpočítávat dobře.
UPDATE 2009/02/11: Jenom oprava textu v titulku Xdialogu.
#!/bin/bash
proxiesfile="$HOME/.download-proxies"
if ! [ -e "$proxiesfile" ];then
echo "Please, create file $proxiesfile"
exit
fi
allproxylist="$( awk -F '|' '{print $2;}' "$proxiesfile" | tr '\n' ' ' )"
sshtunnels="$( awk -F '|' '$1~/^.+$/{print " " $1,$2;}' "$proxiesfile" )"
sshtunservers="$( awk -F '|' '$1~/^.+$/{print $1;}' "$proxiesfile" | tr '\n' ' ' )"
console=0
if [ $# -gt 0 ];then
i=$#
while [ $i -gt 0 ];do
case "$1" in
-a)
if [ $# -gt 1 ];then
id="$[$2+1]"
proxylist="$proxylist $( echo "$allproxylist" | tr -s '[[:space:]]' '\n' | sed -n "${id}p" )"
i=$[$i-1]
shift 2
else
echo "value please"
exit
fi
;;
-d)
if [ $# -gt 1 ];then
id="$[$2+1]"
if [ -z "$proxylist" ] ;then proxylist="$allproxylist";fi
proxylist="$( echo "$proxylist" | tr -s '[[:space:]]' '\n' | sed "${id}d" )"
i=$[$i-1]
shift 2
else
echo "value please"
exit
fi
;;
-r)
if [ $# -gt 1 ];then
rate="--limit-rate=$2"
i=$[$i-1]
shift 2
else
echo "value please"
exit
fi
;;
-p)
if [ $# -gt 1 ];then
proxylist="$2"
shift 2
i=$[$i-1]
else
echo "value please"
exit
fi
;;
-c)
console=1
shift
;;
-x)
console=0
shift
;;
*)
v="$1"
shift 1
set "$@" "$v"
;;
esac
i=$[$i-1]
done
if [ -z "$proxylist" ] ;then proxylist="$allproxylist";fi
tmpdir="$( mktemp -d )"
echo "TMPDIR: $tmpdir"
while [ $# -gt 0 ];do
echo "Downloading URL $1"
for proxy in $proxylist ;do
if [ "$proxy" = "NONE" ];then
unset http_proxy
else
export http_proxy="$proxy"
fi
echo "HTTP PROXY: $http_proxy"
url="$1"
o1="$( wget -O - -q "$url" )"
o2="$(
echo "$o1" \
| perl -e '
undef $/;
$a=<STDIN>;
if (($b)=($a=~m,<form[^>]+name="f1"[^>]+>(.+?)</form>,is)) {
@inputs=();
while ((($input)=($b=~m,(<input[^>]+type="hidden"[^>]+>),is)) and (($name)=($input=~/name="([^"]+)"/is)) and (($value)=($input=~/value="([^"]*)"/is))) {
$value=unpack("H*",$value);
$value=~s/(..)/%$1/g;
push @inputs,sprintf("%s=%s",$name,$value);
$b=~s,(<input[^>]+type="hidden"[^>]+>),,is;
}
print sprintf("post-data:%s\n",join("&",@inputs));
if (($img)=($b=~m,<img[^>]+src="(http://bagruj.cz/captchas/[^.]+.jpg)"[^>]*>,is)) {
print "captcha:$img\n";
}
if (($wait)=($b=~m,<span[^>]+id="countdown"[^>]*>(\d+)</span[^>]*>,is)) {
print "wait:$wait\n";
}
};
'
)"
captcha="$( echo "$o2" | grep -E '^captcha:' | cut -f2- -d: )"
postdata="$( echo "$o2" | grep -E '^post-data:' | cut -f2- -d: )"
wait="$( echo "$o2" | grep -E '^wait:' | cut -f2- -d: )"
echo "wait: $wait seconds"
waitstart="$( date +"%s" )"
echo "captcha: $captcha"
if [ -n "$captcha" ] && [ -n "$url" ];then
wget $rate -q -O "$tmpdir"/cap "$captcha"
if [ -n "$DISPLAY" ];then gqview "$tmpdir"/cap >/dev/null 2>&1 & pid="$!" ; fi
code=""
if [ -n "$DISPLAY" ] && [ $console -eq 0 ];then
while [ -z "$code" ];do code="$( Xdialog --no-cancel --title 'Bagruj downloader' --screen-center --stdout --inputbox "Enter the CAPTCHA code\nfor $tmpdir/cap" 10 40 )" ; if [ $? -eq 1 ];then code="-";fi;done
else
while [ -z "$code" ];do read -p 'Code for $tmpdir/cap ["-" for stop]: ' code;done
fi
if [ -n "$DISPLAY" ];then kill "$pid" ; fi
if [ "$code" != "-" ];then
if [ -n "$wait" ]; then
realwait="$(( $( date +"%s" ) - ( $waitstart + $wait ) ))"
if [ $( date +"%s" ) -le $(( $waitstart + $wait )) ] ; then while [ $( date +"%s" ) -le $(( $waitstart + $wait )) ];do echo -en "waiting $wait seconds [ $(( $waitstart + $wait - $( date +"%s" ) )) ] \r";sleep 1; done ; echo ; fi
file="$( wget $rate -O - -q --post-data="$postdata&code=$code" "$url" | perl -e 'undef $/;$a=<STDIN>;if (($b)=($a=~m,<a\s+href="([^"]+)">\1</a>,is)) { print "$b\n"; };' )"
if [ -z "$file" ]; then break 2 ; fi
echo "url: $file"
echo "wget $rate -c '$file'"
if wget $rate -c "$file" ; then break ; fi
fi
fi
fi
done
shift
done
rm -rf "$tmpdir"
else
cat <<EndOfInfo
ssh tunnels:
$sshtunnels
proxy list:
$( echo "$allproxylist" | tr -s '[[:space:]]' '\n' | nl -v0 -w4 -s' -- ' )
$sshtunservers
Usage: $0 [ -a proxynum ] [ -d proxynum ] [ -r rate-limit ] [ -p proxyurl ] [ { -c | -x } ] URL ...
-a proxynum
add proxy at line proxynum
-d proxynum
delete proxy at line proxynum in ACTUAL proxy list
-r rate-limit
limit wget download rate
-p proxyurl
insert proxy specified by proxyurl
-c
use console to enter captcha code
-x
use X dialog to enter captcha code (this is default)
URL
URL to download
EndOfInfo
fi
Tiskni
Sdílej:
A ja si myslel ze pisu nesrozumitelnej bash :D
A ja si myslel ze pisu nesrozumitelnej bash :D
Pokud tim chces rict, ze se ti ten skriptik zda nesrozumitelnej, tak rekni, co presne nechapes. Jak jsem psal, pokud to nebudou veci RTFM, tak to rad vysvetlim. A to jsi jeste nevidel down-rapid:)
Takhle to vypada jako by bash byla nejaka tezka magie. :D
Sice tam nachazim par veci ktery se me nelibi a ktery bych prepsal ale jinak je to podarena sranda :P
No uznavam ze to taky nejni nejsrozumitelnejsi :P ale furt je to citelnejsi :D
Pockej, pockej. Tady je prevazne na jednom radku jeden prikaz a nemyslim, ze by byly nejak hodne slozity. Nejsem bash-guru a proto pouzivam jenom jednoduchy zakladni veci, takze bych nerekl, ze je to nejak magie (btw, bash magie byla soutezi po drate se suse). Nejvetsi magie je tam ten perl skript, ale proste v perlu je jednodussi parsovat nejakej vetsi text.
Co bys tam treba prepsal? Ja se nebranim tomu ucit se novy veci. Co presne se ti zda, ze neni citelne (krome toho perlu, ale kdyz perl umis, tak i ten perl je jednoduchej)?