Na Humble Bundle běží akce Linux: All the Things by O'Reilly a Picos, HATs, and More by Raspberry Pi Press. Elektronické knihy lze koupit se slevou a současně podpořit organizace Code for America a Raspberry Pi Foundation.
FreeCAD (Wikipedie), tj. svobodný multiplatformní parametrický 3D CAD, má nový vtipný a současně užitečný doplněk Banana For Scale (GitHub). Aktuálně umožňuje do výkresu vložit banán nebo plechovku pro porovnání a určení měřítka.
Blender Studio nedávno oznámilo plán vytvořit svůj první otevřený (open source) celovečerní film. Film by se měl jmenovat Overgrown (YouTube). Film vznikne, pokud se zajistí financování. Prvním krokem je získat 7 000 předplatitelů Blender Studia. Cena je od 11,50 eur měsíčně. Aktuálně počet předplatitelů je 5 289. Předplatné pokryje 20 % nákladů. Zbytek, 80 % nákladů, má být financován externími producenty nebo distributory.
Byl vydán Debian 13.6, tj. šestá opravná verze Debianu 13 s kódovým názvem Trixie a Debian 12.15, tj. poslední patnáctá opravná verze Debianu 12 s kódovým názvem Bookworm, k dispozici je LTS. Řešeny jsou především bezpečnostní problémy, ale také několik vážných chyb. Instalační média Debianu 13 a Debianu 12 lze samozřejmě nadále k instalaci používat. Po instalaci stačí systém aktualizovat.
V jádře Linux byla nalezena a v upstreamu již byla opravena kritická zranitelnost GhostLock aneb CVE-2026-43499. Lokálnímu uživateli umožňuje získat práva roota a také obejít kontejnerovou izolaci. Zranitelnost existovala v Linuxu 15 let, tj. od roku 2011, od Linuxu verze 2.6.39.
Evropská komise předběžně shledala, že návykový design aplikací Instagram a Facebook od americké společnosti Meta porušuje unijní nařízení o digitálních službách (DSA). Návykový design zahrnuje například takzvané nekonečné posouvání, automatické přehrávání videí, tzv. push notifikace, kdy aplikace uživatele vybízí k návratu do jejího prostředí, či vysoce personalizovaný algoritmus, který rychle pozná, co uživatele baví a snaží
… více »Byla vydána verze 1.97.0 programovacího jazyka Rust (Wikipedie). Podrobnosti v poznámkách k vydání. Vyzkoušet Rust lze například na stránce Rust by Example.
Švýcarská společnost Punkt. má nově v nabídce telefon Punkt. MC03. Telefon byl navržen ve Švýcarsku s důrazem na soukromí a digitální suverenitu a vyroben v Německu. V telefonu běží operační systém AphyOS (Apostrophy OS) založený na AOSP (Android Open Source Project) 15. Cena telefonu je 745 eur.
TypeScript (Wikipedie), tj. JavaScript rozšířený o statické typování a další atributy, byl vydán v nové verzi 7.0. Kompilátor byl kvůli výkonu přepsán z TypeScriptu do Go.
Europarlament podpořil pozměněnou verzi výjimky známé jako „chat control 1.0“ umožňující firmám skenovat soukromou komunikaci na internetu kvůli ochraně dětí před zneužitím. Pozměňovací návrhy přijaté europoslanci však počítají s tím, že z výjimky bude vyřazena šifrovaná komunikace. Výjimka přestala platit začátkem dubna poté, co se Evropský parlament a Rada EU nedokázaly shodnout na jejím prodloužení. Rada následně přijala
… více »
curl -c curlcookies.txt -d "loginName=A999&loginPass=1&loginLevel=B" http://74.219.212.106/cgi-bin/login.cgi?command=0
curl -b curlcookies.txt http://74.219.212.106/cgi-bin/eventLog.cgi?command=0
Takhle by to mělo mělo být správně, ale místo dat mi to stáhne html kod stránky, nevíte, v čem dělám chybu?
ExpTimeNow="`date '+%F %R:%S' --date '3600 seconds'`" ExpTimeGMT="`date '+%a, %d %b %Y %R:%S GMT' --date \"$ExpTimeNow\"`" ExpTimeTmp="`date +%s --date \"$ExpTimeNow\"`" ExpTime="`echo \"$ExpTimeTmp * 1000\" | bc `" curl -c curlcookies.txt -e 'http://74.219.212.106/cgi-bin/login.cgi' -A 'Mozilla/5.0 (X11; U; Linux i686; pl-PL; rv:1.9.0.2) Gecko/20121223 Ubuntu/9.25 (jaunty) Firefox/3.0' -d "loginName=A999&loginPass=1&loginLevel=B&exp=$ExpTime&expstring=$ExpTimeGMT&command=1" http://74.219.212.106/cgi-bin/login.cgi curl -b curlcookies.txt http://74.219.212.106/cgi-bin/eventLog.cgi?command=0Poslední stáhne tu stránku ale žádný event tam není (aspoň fčul) tak jsem to zkusil za včerejšek a je to tam - teda jestli to jste chtěl.
curl -b curlcookies.txt 'http://74.219.212.106/cgi-bin/eventLog.cgi?command=0&name=&id=&period=2&dayFrom=0&dayTo=0&dept=-999&trigger=-1'
curl -c curlcookies.txt -d "loginName=A999&loginPass=1&loginLevel=B&command=1" http://74.219.212.106/cgi-bin/login.cgicurl -b curlcookies.txt http://74.219.212.106/cgi-bin/eventLog.cgi?command=0curl -b curlcookies.txt http://74.219.212.106/cgi-bin/eventLog.cgi?command=0
To vyhodi tohle...
Session Timeout...This page has been idle more than 3600 seconds
Tak kde je teda problem..
ExpTimeNow="`date '+%F %R:%S' --date '3600 seconds'`" ExpTimeGMT="`date '+%a,%%20%d%%20%b%%20%Y%%20%R:%S%%20GMT' --date \"$ExpTimeNow\"`" ExpTimeTmp="`date +%s --date \"$ExpTimeNow\"`" ExpTime=$(($ExpTimeTmp * 1000)) curl -c curlcookies.txt -e 'http://74.219.212.106/cgi-bin/login.cgi' -A 'Mozilla/5.0 (X11; U; Linux i686; pl-PL; rv:1.9.0.2) Gecko/20121223 Ubuntu/9.25 (jaunty) Firefox/3.0' -d "loginName=A999&loginPass=1&loginLevel=B&exp=$ExpTime&expstring=$ExpTimeGMT&command=1" http://74.219.212.106/cgi-bin/login.cgi curl -b curlcookies.txt http://74.219.212.106/cgi-bin/eventLog.cgi?command=0
curl -c curlcookies.txt -d "loginName=A999&loginPass=1 &loginLevel=B&command=1" http://74.219.212.106/cgi-bin/login.cgi > log.html
curl -b curlcookies.txt http://74.219.212.106/cgi-bin/ eventLog.cgi?command=0 > out.html
curl -b curlcookies.txt http://74.219.212.106/cgi-bin/report.cgi?command=0&elemployeename=&elemployeeid=&elperiod=2&dayFrom=0&dayTo=0&elemployeedept=-999&eltrigger=-1&format=1
Tohle když zadám do internetového prohlížeče, tak to přímo nabídne stáhnutí CVS souboru z "Today" s daty. Ale jak to nacpat do curlu?
Díky
curl -c curlcookies.txt -d "loginName=A999&loginPass=1&loginLevel=B&command=1" http://74.219.212.106/cgi-bin/login.cgi
curl -b curlcookies.txt 'http://74.219.212.106/cgi-bin/report.cgi?command=0&elemployeename=&elemployeeid=&elperiod=2&dayFrom=0&dayTo=0&elemployeedept=-999&eltrigger=-1&format=1' > data.csv
Tohle je sice fajn, stáhne mi to data, přímo data už v souboru, doupravím si to, ale už mi to nestáhne fotky, který samozřejmně v demoverzi nejsou.
Takhle to vypadá v reálu:
http://img375.imageshack.us/img375/3061/obrx.png
Problém totiž je, že jsem to dělal na demoverzi stím, že v reálu to bude stejné. Jenže v reálu jsou fotky uložené ve tvaru /photo/1274880305_00111DA07EA8.jpg, ale zaboha nemůžu příjít na to první číslo co to znamená. Jen se to postupně inrementuje s každou další novou fotkou(nepravidelně!), takže nevím, jak to stáhnout,
respektive udělat list něco jako :
IP/photo/1274880305_00111DA07EA8.jpg
IP/photo/1274880295_00111DA07EA8.jpg
IP/photo/1274880281_00111DA07EA8.jpg
Abych to mohl stáhnout wgetem.
Co by vyřešilo problém by bylo, kdyby to stáhlo ty data jako tabulku, né jako html, protože ať to uložím do jakéhokoliv formátu >html csv, tak vždycky to zobrazí html, prostě jen kdyby to stáhlo ty data bez formátofání html. Jinak ta fotka /photo/1274880305_00111DA07EA8.jpg půjde přejmenovat ještě do tvaru datum_OUT/IN_idctecky.jpg a to taky bude oříšek, aby se to nezamíchalo
<a> je uložena v href=.
to číslo je Unix timestampTo bylo prvni, co me napadlo
Sorry, ze jsem nereagoval drive, ale sledoval jsem tuhle diskuzi na zacatku a pak nejak prehledl tu vymenu kolem 26.5. :-O
Musim rict, ze tam teda mate docela solidniho Velkeho Bratra™.
Nejlepsi zpusob s temi jmeny obrazku je -- jak uz ti tady prede mnou napovedeli -- si stahnout to HTML a z neho si primo z te tabulky vyklobat cestu k tomu souboru. Vsechno to je v 8. sloupci, takze to nemuze byt tak tezke udelat nejaky 'cut', 'awk' nebo 'sed' skript.
P.S. Prave jsem si dohral s 'date' a opravdu je to Unix timestamp:
date -d "15:25:05 2010-05-26 CEST" +%s
vraci 1274880305, presne jak prvni radek v tabulce a stavovy radek dole v okne prohlizece ukazuje.
12:24:24 2010-5-04ted jsem udelal:
promenna=$(cat out.csv) date -d "$promenna" +%sa vyhodi mi to UNIX timestamp, ale co když budu mít v tom texťáku různý počet záznamů, né jen jeden třeba
12:24:24 2010-5-04 12:24:22 2010-5-04 12:23:04 2010-5-04 atdTak bych potřeboval to udělat pro každý řádek, výše popsaný postup nebude fungovat, nejprve jsem si myslel,že to půjde, ale nee :)) Jde to nějak udělat třeba podmínkou?
for i in $pocetradku do date "promena pro kazdy svuj radek" +%s done?? Díky,vím už otravuju, ale zkouším to souběžně, né že bych tu čekal na odpověď :)
co když budu mít v tom texťáku různý počet záznamů, né jen jedenViz
man date, prepinac -f
date -f soubor_s_datumy +%s
12 54 2 45 5 254 663 2Tak jakým způsobem zaindexovat proměnné A a B, abych pak mohl uděla A x B a udělat to pro každý řadek Něco jako A=$(cat cisla.txt | awk '{print $1}') a B=$(cat cisla.txt | awk '{print $2}') a pak násobení na stejném řádku.. Představte si to jako v excelu, uděláte vzorec pro jeden řádek a pak ho "roztáhnete" podle počtu řádků
Nevíte, jakým způsobem by se dala vyřešit ta podmínka?Viz
man bash sekce SHELL BUILTIN COMMANDS, prikaz "read".
#!/bin/bash
muj_soubor="/jmeno/meho/souboru"
# funkce read pouziva IFS (Internal Field Separator) pro rozdeleni slov ve ctene radce
# (tedy pro pochopeni, co je "samostatne slovo", takze puvodni hodnotu si zazalohujeme
IFS_puvodni=$IFS
IFS=" "
# funkce read cte ze standardniho vstupu (resp. to, na co ukazuje souborovy ukazatel 0),
# takze tam presmeruje nas soubor a ulozime puvodni hodnotu do ukazatele napr. cislo 3
exec 3<&0
exec 0<${muj_soubor}
# cteme po radcich dokud je co
while read A B
do
# zde provadime vlastni vypocet s hodnotami v $A a $B
done
# vratime vse do puvodniho stavu
exec 0<&3
IFS=${IFS_puvodni}
Zde je priklad, kdy se nacte nejpve cela radka a az pak se rozbije na jednotliva slova.
Dalsi priklad se ctenim radku a jejich zpracovanim je tady
Uplne nejjednodussi reseni bez vsech maslicek je udelat:
#!/bin/bash
while read radek #nebo "while read A B"
do
# zpracovani radky
do <"muj_soubor"
Snad jsem to nekde nezkopal.
Velkeho Bratra??? Co to je?Blog na ABCLinuxu: Who is Big brother? Wikipedie: Velký bratr
Tiskni
Sdílej: