abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×

dnes 11:33 | IT novinky

Red Hat kupuje společnost Codenvy stojící za stejnojmenným webovým (cloudovým) integrovaným vývojovým prostředím (WIDE) postaveném na Eclipse Che.

Ladislav Hagara | Komentářů: 0
dnes 08:55 | Nová verze

V listopadu 2014 byl představen fork Debianu bez systemd pojmenovaný Devuan. Po dva a půl roce jeho vývojáři oznámili vydání první stabilní verze 1.0. Jedná se o verzi s dlouhodobou podporou (LTS) a její kódové jméno je Jessie, podle planetky s katalogovým číslem 10 464.

Ladislav Hagara | Komentářů: 4
včera 20:22 | Zajímavý článek

Nadace Raspberry Pi vydala již osmapadesáté číslo (pdf) stostránkového anglicky psaného časopisu MagPi věnovanému Raspberry Pi a projektům postaveným na tomto jednodeskovém počítači a druhé číslo (pdf) časopisu Hello World primárně určeného pro učitele informatiky a výpočetní techniky.

Ladislav Hagara | Komentářů: 0
včera 19:55 | Humor

Portál Stack Overflow informuje na svém blogu, že pomohl ukončit editor Vim už více než milionu vývojářů. V loňském roce například hledal odpověď na otázku Jak ukončit editor Vim v průměru 1 z 20 000 návštěvníků.

Ladislav Hagara | Komentářů: 7
včera 19:22 | Nová verze

Po pěti měsících od vydání verze 3.5.0 byla vydána nová stabilní verze 3.6.0, tj. první z nové řady 3.6, minimalistické linuxové distribuce zaměřené na bezpečnost Alpine Linux (Wikipedie). Z novinek lze zmínit například podporu dvou nových 64bitových platforem little-endian POWER machines (ppc64le) a IBM z Systems (s390x) nebo nové balíčky Rust 1.17.0, Cargo 0.18.0, GHC 8.0.2 a Julia 0.5.2.

Ladislav Hagara | Komentářů: 0
24.5. 21:33 | Bezpečnostní upozornění

V Sambě byla nalezena a opravena bezpečnostní chyba CVE-2017-7494. Má-li útočník právo ukládat soubory na vzdálený server, může tam uložit připravenou sdílenou knihovnu a přinutit smbd server k jejímu načtení a tím pádem ke spuštění libovolných příkazů. Chyba je opravena v upstream verzích 4.6.4, 4.5.10 a 4.4.14. Chyba se týká všech verzí Samby od verze 3.5.0 vydané 1. března 2010.

Ladislav Hagara | Komentářů: 4
24.5. 20:44 | Nová verze

Byla vydána nová stabilní verze 4.3.0 integrovaného vývojového prostředí (IDE) Qt Creator. Z novinek lze zmínit například integraci editoru kódu do Qt Quick Designeru.

Ladislav Hagara | Komentářů: 1
24.5. 20:11 | Bezpečnostní upozornění

Společnost Check Point informuje na svém blogu o novém vektoru útoku. Pomocí titulků lze útočit na multimediální přehrávače VLC, Kodi, Popcorn Time, Stremio a pravděpodobně i další. Otevření útočníkem připraveného souboru s titulky v neaktualizovaném multimediálním přehrávači může vést ke spuštění libovolných příkazů pod právy uživatele. Ukázka na YouTube. Chyba je opravena v Kodi 17.2 nebo ve VLC 2.2.6.

Ladislav Hagara | Komentářů: 11
23.5. 15:18 | Zajímavý software

CrossOver, komerční produkt založený na Wine, je dnes (23. 5. 2017) dostupný ve slevě. Roční předplatné linuxové verze vyjde s kódem TWENTYONE na $21, resp. $1 v případě IP z chudších zemí. Firma CodeWeavers, která CrossOver vyvíjí, významně přispívá do Wine. Přidaná hodnota CrossOver spočívá v přívětivějším uživatelském rozhraní, integraci do desktopu a podpoře.

Fluttershy, yay! | Komentářů: 26
23.5. 15:11 | Zajímavý projekt

V únoru loňského roku bylo představeno několik útoků na celou řadu bezdrátových klávesnic a myší s názvem MouseJack. Po více než roce lze chybu opravit, tj. aktualizovat firmware, také z Linuxu. Richardu Hughesovi se podařilo navázat spolupráci se společností Logitech, získat od nich dokumentaci, přesvědčit je, aby firmware poskytovali přímo a ne jako součást .exe souboru, aby mohl být popis začleněn do služby Linux Vendor Firmware Service (LVFS) a aktualizace tak mohla proběhnou přímo z Linuxu pomocí projektu fwupd.

Ladislav Hagara | Komentářů: 2
Chystáte se pořídit CPU AMD Ryzen?
 (6%)
 (32%)
 (1%)
 (8%)
 (44%)
 (9%)
Celkem 616 hlasů
 Komentářů: 62, poslední 19.5. 01:57
    Rozcestník

    Dotaz: python > bash

    24.8.2012 23:33 Fredy72 | skóre: 5
    python > bash
    Přečteno: 580×

    Potřebuji takovýto příkaz z pythonu přepsat do bashe.

    db.execute("CREATE TABLE tiles (x int, y int, z int, s int, image blob, PRIMARY KEY (x,y,z,s));")

    db.execute('INSERT INTO "tiles" VALUES(?,?,?,?,?);',(int(x),int(y.split('.')[0]),17-int(z),0,buffer(file("%s/%s/%s/%s" % (sys.argv[2],z,x,y)).read())))

    Tedy ten druhý řádek, první jsem svedl, jde o sqlite. Je to vůbec možné?


    Řešení dotazu:


    Odpovědi

    Jakub Lucký avatar 25.8.2012 01:13 Jakub Lucký | skóre: 40 | Praha
    Rozbalit Rozbalit vše Re: python > bash
    NAME
           sqlite3 - A command line interface for SQLite version 3
    
    SYNOPSIS
           sqlite3 [options] [databasefile] [SQL]
    
    SUMMARY
           sqlite3  is  a  terminal-based front-end to the SQLite library that can
           evaluate queries interactively and display the results in multiple for‐
           mats.  sqlite3 can also be used within shell scripts and other applica‐
           tions to provide batch processing features.
    
    If you understand, things are just as they are; if you do not understand, things are just as they are. (Zen P.) Blogísek
    25.8.2012 13:45 Fredy72 | skóre: 5
    Rozbalit Rozbalit vše Re: python > bash

    A co jako?

    Mně jde o to, že mám v shellu proměnné x,y,z a ve filesystému soubor, který potřebuji dostat do té databáze tak, jak je to napsáno v tom pythonu. Jde mi spíš o syntaxi s uvozovkami, apostrofy, složenými závorkami a pod., aby to příkaz sqlite pobral. Takže asi tak...

    25.8.2012 14:01 Fredy72 | skóre: 5
    Rozbalit Rozbalit vše Re: python > bash

    Mám něco takového (ten sys.argv[2] je jen název adresáře), ale nefachčí.

    sqlite "$NAME" "INSERT INTO tiles VALUES ('${x}','${y}','${z}',0,'/zaloha/x/${file}')"

    25.8.2012 16:29 chrono
    Rozbalit Rozbalit vše Re: python > bash
    Ten súbor sa bude musieť vložiť v hexadecimálnom tvare a bude rozumné použiť rúru, pretože to môže (teoreticky) presiahnuť povolenú dĺžku príkazového riadka.

    Vyzerať by to mohlo napr. ako v tomto emaily.
    25.8.2012 18:24 Fredy72 | skóre: 5
    Rozbalit Rozbalit vše Re: python > bash
    Tohle se zda funkcni, ale nejsem si jist, jestli uložení v hex je totožné, jako způsob v pythonu, kde to má snad ukládat bajty.
    25.8.2012 18:30 chrono
    Rozbalit Rozbalit vše Re: python > bash
    TO "x" na začiatku povie sqlite, že údaje sú zakódované hexadecimálne a uložiť by sa to malo ako binárne dáta.
    25.8.2012 18:42 Fredy72 | skóre: 5
    Rozbalit Rozbalit vše Re: python > bash
    Nene, po načtení z databáze jsou to znaky 0-f, nikoliv původní obsah souboru...
    25.8.2012 18:55 chrono
    Rozbalit Rozbalit vše Re: python > bash
    Ten skript, z toho emailu, vkladá súbory do DB v binárnom tvare, takže problém bude v niečom inom.
    25.8.2012 20:25 Fredy72 | skóre: 5
    Rozbalit Rozbalit vše Re: python > bash

    Zkusil jsem to z toho emailu přepsat do jednoho řádku, ale někde je chyba.

    d=test.db3 rm -f $d; echo "CREATE TABLE Files (name TEXT PRIMARY KEY,contents BLOB);" | sqlite3 $d ; echo "INSERT INTO Files (name,contents) VALUES ('a.png',X'$(od -A n -t x1 'a.png'|tr -d '\r\n\t ')');" | sqlite3 $d ; echo "select contents from Files where name='a.png';" | sqlite3 $d  >b.png

    25.8.2012 20:55 chrono
    Rozbalit Rozbalit vše Re: python > bash
    Problémov tam je viac:

    Za tým d=test.db3 chýba ; (bez nej sa to d berie ako premenná, ktorá platí len pre nasledujúci príkaz rm).

    Pri tom príkaze od je názov súboru v apostrofoch a keďže sú tam už apostrofy použité, nerobí to to, čo to robiť má (a nechce sa mi hľadať, čo by na tom mieste vlastne fungovalo).

    Potom to ten súbor do DB uloží v binárnom tvare, problém ale je, že program sqlite3 to, pri vypisovaní, spracuje len po prvý bajt 0 (takže sa do b.png uloží len časť toho súboru). Pri tom select sa môže použiť hex(contents) a tak sa to vypíše celé, bude to ale hexadecimálny reťazec, ktorý sa bude musieť nejako skonvertovať na binárne dáta (takže najjednoduchšie je to nechať v Python). :)
    25.8.2012 21:00 chrono
    Rozbalit Rozbalit vše Re: python > bash
    Tu je to vyriešené pomocou hexdump a xxd.
    25.8.2012 21:20 Fredy72 | skóre: 5
    Rozbalit Rozbalit vše Re: python > bash

    Ta chybějící ; byl překlep.

    S tím pythonem chceš říct, že to nejde napsat v bash shellu?

    Mně šlo právě o to, zda jde napsat to pythonovské

    buffer(file("%s/%s/%s/%s" % (sys.argv[2],z,x,y)).read())

    nějak v bash...

    25.8.2012 22:33 chrono
    Rozbalit Rozbalit vše Re: python > bash
    Urobiť sa to dá, len sa pri vkladaní musí binárny súbor vkladať ako hexadecimálny reťazec (v samotnej databáze to potom budú zase binárne dáta) a vyberať sa to tiež musí ako hexadecimálny reťazec (a potom sa to skonvertuje späť do binárneho tvaru).
    26.8.2012 00:58 Fredy72 | skóre: 5
    Rozbalit Rozbalit vše Re: python > bash
    Jenže pak si myslím, že jsou ta data uložena jinak, než použitím toho pythonu. Ale já potřebuju, aby byla uložena stejným způsobem. Jde aspoň ten python zakomponovat do bash scriptu?
    pavlix avatar 26.8.2012 02:13 pavlix | skóre: 53 | blog: pavlix
    Rozbalit Rozbalit vše Re: python > bash
    26.8.2012 10:35 chrono
    Rozbalit Rozbalit vše Re: python > bash
    Tie údaje sú uložené úplne rovnako, len sa s nimi ťažšie pracuje.
    25.8.2012 17:09 Zadejte vaše jméno
    Rozbalit Rozbalit vše Re: python > bash
    echo "INSERT INTO tiles VALUES ('${x}','${y}','${z}',0, $(cat /zaloha/x/${file} | sed "s/'/\\\'/g"))" | sqlite "$NAME"

    co toto?
    25.8.2012 18:38 Fredy72 | skóre: 5
    Rozbalit Rozbalit vše Re: python > bash
    Ten obsah souboru to akorat změní a nic.
    25.8.2012 18:41 Zadejte vaše jméno
    Rozbalit Rozbalit vše Re: python > bash
    Jak to muze zmenit obsah souboru? V $NAME neni nazev souboru db?
    25.8.2012 18:42 Zadejte vaše jméno
    Rozbalit Rozbalit vše Re: python > bash
    Jinak sem na konci zapomel ; , ale mozna tam ani nemusi byt...
    25.8.2012 18:43 Fredy72 | skóre: 5
    Rozbalit Rozbalit vše Re: python > bash

    tohle

    cat /zaloha/x/${file} | sed "s/'/\\\'/g")

    změní bajty v souboru

    25.8.2012 18:58 Zadejte vaše jméno
    Rozbalit Rozbalit vše Re: python > bash
    Aha, promin, v sqlite se ' escapne pomoci ', ale cat /zaloha/x/${file} | sed "s/'/\'\'/g" by uz fungovat mohlo. :P
    25.8.2012 20:17 Fredy72 | skóre: 5
    Rozbalit Rozbalit vše Re: python > bash
    Nepodařilo se mi to rozchodit ani tak.
    26.8.2012 16:10 Fredy72 | skóre: 5
    Rozbalit Rozbalit vše Re: python > bash
    Tak vyřešeno, přepsal jsem to v perlu :-)
    mess avatar 26.8.2012 17:19 mess | skóre: 43 | blog: bordel | Háj ve Slezsku - Smolkov
    Rozbalit Rozbalit vše Re: python > bash
    A proč to nemohlo zůstat v Pythonu?
    Cez párne mesiace zošíváš vaginy, cez neparne montuješ hajzle.

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.