Microsoft vydal novou velkou aktualizaci 2404.23 v září 2019 pod licencí SIL Open Font License (OFL) zveřejněné rodiny písma Cascadia Code pro zobrazování textu v emulátorech terminálu a vývojových prostředích.
OpenTofu, tj. svobodný a otevřený fork Terraformu vzniknuvší jako reakce na přelicencování Terraformu z MPL na BSL (Business Source License) společností HashiCorp, bylo vydáno ve verzi 1.7.0. Přehled novinek v aktualizované dokumentaci. Vypíchnout lze State encryption.
Spouštět webový prohlížeč jenom kvůli nákupu kávy? Nestačí ssh? Stačí: ssh terminal.shop (𝕏).
Yocto Project byl vydán ve verzi 5.0. Její kódové jméno je Scarthgap. Yocto Project usnadňuje vývoj vestavěných (embedded) linuxových systémů na míru konkrétním zařízením. Cílem projektu je nabídnou vývojářům vše potřebné. Jedná se o projekt Linux Foundation.
Operační systém 9front, fork operačního systému Plan 9, byl vydán v nové verzi "do not install" (pdf). Více o 9front v FQA.
Svobodná webová platforma pro sdílení a přehrávání videí PeerTube (Wikipedie) byla vydána v nové verzi 6.1. Přehled novinek i s náhledy v oficiálním oznámení a na GitHubu. Řešeny jsou také 2 bezpečnostní chyby.
Lennart Poettering na Mastodonu představil utilitu run0. Jedná se o alternativu k příkazu sudo založenou na systemd. Bude součástí systemd verze 256.
Hudební přehrávač Amarok byl vydán v nové major verzi 3.0 postavené na Qt5/KDE Frameworks 5. Předchozí verze 2.9.0 vyšla před 6 lety a byla postavená na Qt4. Portace Amaroku na Qt6/KDE Frameworks 6 by měla začít v následujících měsících.
Byla vydána nová verze 2.45.0 distribuovaného systému správy verzí Git. Přispělo 96 vývojářů, z toho 38 nových. Přehled novinek v příspěvku na blogu GitHubu a v poznámkách k vydání. Vypíchnout lze počáteční podporu repozitářů, ve kterých lze používat SHA-1 i SHA-256.
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: