Digitální a informační agentura (DIA) oznámila (PDF, X a Facebook), že mobilní aplikace Portál občana je ode dneška oficiálně venku.
#HACKUJBRNO 2024, byly zveřejněny výsledky a výstupy hackathonu města Brna nad otevřenými městskými daty, který se konal 13. a 14. dubna 2024.
Společnost Volla Systeme stojící za telefony Volla spustila na Kickstarteru kampaň na podporu tabletu Volla Tablet s Volla OS nebo Ubuntu Touch.
Společnost Boston Dynamics oznámila, že humanoidní hydraulický robot HD Atlas šel do důchodu (YouTube). Nastupuje nová vylepšená elektrická varianta (YouTube).
Desktopové prostředí LXQt (Lightweight Qt Desktop Environment, Wikipedie) vzniklé sloučením projektů Razor-qt a LXDE bylo vydáno ve verzi 2.0.0. Přehled novinek v poznámkách k vydání.
Nejvyšší soud podpořil novináře Českého rozhlasu. Nařídil otevřít spor o uchovávání údajů o komunikaci (data retention). Uvedl, že stát odpovídá za porušení práva EU, pokud neprovede řádnou transpozici příslušné směrnice do vnitrostátního práva.
Minulý týden proběhl u CZ.NIC veřejný test aukcí domén. Včera bylo publikováno vyhodnocení a hlavní výstupy tohoto testu.
Byla vydána nová verze 3.5.0 svobodné implementace protokolu RDP (Remote Desktop Protocol) a RDP klienta FreeRDP. Přehled novinek v ChangeLogu. Opraveno bylo 6 bezpečnostních chyb (CVE-2024-32039, CVE-2024-32040, CVE-2024-32041, CVE-2024-32458, CVE-2024-32459 a CVE-2024-32460).
Google Chrome 124 byl prohlášen za stabilní. Nejnovější stabilní verze 124.0.6367.60 přináší řadu oprav a vylepšení (YouTube). Podrobný přehled v poznámkách k vydání. Opraveno bylo 22 bezpečnostních chyb. Vylepšeny byly také nástroje pro vývojáře.
Byla vydána nová verze 9.3 z Debianu vycházející linuxové distribuce DietPi pro (nejenom) jednodeskové počítače. Přehled novinek v poznámkách k vydání. Novinkou je vlastní repozitář DietPi APT.
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.cgi
curl -b curlcookies.txt http://74.219.212.106/cgi-bin/eventLog.cgi?command=0
curl -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: