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 00:55 | Pozvánky

    Spolek OpenAlt zve příznivce otevřených řešení a přístupu na 209. brněnský sraz, který proběhne tento pátek 16. května od 18:00 ve studentském klubu U Kachničky na Fakultě informačních technologií Vysokého učení technického na adrese Božetěchova 2/1. Jelikož se Brno stalo jedním z hlavních míst, kde se vyvíjí open source knihovna OpenSSL, tentokrát se OpenAlt komunita potká s komunitou OpenSSL. V rámci srazu Anton Arapov z OpenSSL

    … více »
    Ladislav Hagara | Komentářů: 0
    dnes 00:22 | Komunita

    GNOME Foundation má nového výkonného ředitele. Po deseti měsících skončil dočasný výkonný ředitel Richard Littauer. Vedení nadace převzal Steven Deobald.

    Ladislav Hagara | Komentářů: 1
    10.5. 15:00 | Zajímavý článek

    Byl publikován přehled vývoje renderovacího jádra webového prohlížeče Servo (Wikipedie) za uplynulé dva měsíce. Servo zvládne už i Gmail. Zakázány jsou příspěvky generované pomocí AI.

    Ladislav Hagara | Komentářů: 7
    9.5. 17:22 | Nová verze

    Raspberry Pi Connect, tj. oficiální služba Raspberry Pi pro vzdálený přístup k jednodeskovým počítačům Raspberry Pi z webového prohlížeče, byla vydána v nové verzi 2.5. Nejedná se už o beta verzi.

    Ladislav Hagara | Komentářů: 4
    9.5. 15:22 | Komunita

    Google zveřejnil seznam 1272 projektů (vývojářů) od 185 organizací přijatých do letošního, již jednadvacátého, Google Summer of Code. Plánovaným vylepšením v grafických a multimediálních aplikacích se věnuje článek na Libre Arts.

    Ladislav Hagara | Komentářů: 0
    8.5. 19:22 | Nová verze

    Byla vydána (𝕏) dubnová aktualizace aneb nová verze 1.100 editoru zdrojových kódů Visual Studio Code (Wikipedie). Přehled novinek i s náhledy a videi v poznámkách k vydání. Ve verzi 1.100 vyjde také VSCodium, tj. komunitní sestavení Visual Studia Code bez telemetrie a licenčních podmínek Microsoftu.

    Ladislav Hagara | Komentářů: 0
    8.5. 18:00 | Nová verze

    Open source platforma Home Assistant (Demo, GitHub, Wikipedie) pro monitorování a řízení inteligentní domácnosti byla vydána v nové verzi 2025.5.

    Ladislav Hagara | Komentářů: 0
    8.5. 01:22 | Nová verze Ladislav Hagara | Komentářů: 0
    8.5. 00:55 | Zajímavý projekt

    PyXL je koncept procesora, ktorý dokáže priamo spúštat Python kód bez nutnosti prekladu ci Micropythonu. Podľa testov autora je pri 100 MHz približne 30x rýchlejší pri riadeni GPIO nez Micropython na Pyboard taktovanej na 168 MHz.

    vlk | Komentářů: 0
    7.5. 19:44 | Nová verze

    Grafana (Wikipedie), tj. open source nástroj pro vizualizaci různých metrik a s ní související dotazování, upozorňování a lepší porozumění, byla vydána ve verzi 12.0. Přehled novinek v aktualizované dokumentaci.

    Ladislav Hagara | Komentářů: 0
    Jaký filesystém primárně používáte?
     (57%)
     (1%)
     (8%)
     (22%)
     (4%)
     (2%)
     (3%)
     (1%)
     (1%)
     (3%)
    Celkem 585 hlasů
     Komentářů: 26, poslední 8.5. 09:58
    Rozcestník

    Dotaz: BASH-Tar a výpis do souboru

    31.7.2012 21:40 MM
    BASH-Tar a výpis do souboru
    Přečteno: 450×
    Ahoj, jak bych mohl vypsat seznam souborů které daný soubor tar obsahuje, včetně cesty do souboru? Problém je ale v tom, že bych potřeboval na začátek každého řádku který uloží tar a na konec každého řádku vložit vlastní text.

    obsah soubory by pak mohl vypadat takto...
    MUJ TEXT|toto vložil tar|MUJ DRUHY TEXT
    MUJ TEXT|toto vložil tar|MUJ DRUHY TEXT
    MUJ TEXT|toto vložil tar|MUJ DRUHY TEXT
    MUJ TEXT|toto vložil tar|MUJ DRUHY TEXT
    MUJ TEXT|toto vložil tar|MUJ DRUHY TEXT
    
    Moc děkuji za pomoc

    Odpovědi

    31.7.2012 21:47 l4m4
    Rozbalit Rozbalit vše Re: BASH-Tar a výpis do souboru
    Pomalu by možná mohlo být načase začít taky číst dokumentaci a řešit alespoň jednoduché problémy samostatně...
    tar -tf archive.tar | sed 's/.*/MUJ TEXT|\0|MUJ DRUHY TEXT/'
    31.7.2012 22:11 MM
    Rozbalit Rozbalit vše Re: BASH-Tar a výpis do souboru
    Já se vážně snažím, ale není to vůbec lehký, hlavně v mých letech, všechno je anglicky a o to je to daleko těžší :-( jinak díky za pomoc, můžu ještě o úprava která mě nenapadla.. až jsem vyděl výsledek. Můžu nějak získat i to co aktuálně vkláda ten tar a přidat ho ještě jednou ale ke svému textu? Děkuji
    výsledek by pak měl vypadat finalně takto..
    MUJ TEXT|MUJ DRUHY TEXT+toto vložil tar|toto vložil tar
    MUJ TEXT|MUJ DRUHY TEXT+toto vložil tar|toto vložil tar
    MUJ TEXT|MUJ DRUHY TEXT+toto vložil tar|toto vložil tar
    
    31.7.2012 22:21 l4m4
    Rozbalit Rozbalit vše Re: BASH-Tar a výpis do souboru
    Ano. To je to \0, můžeš to použít klidně desetkrát.
    31.7.2012 22:52 MM
    Rozbalit Rozbalit vše Re: BASH-Tar a výpis do souboru
    díky moc, tak tady je funkční výsledek
    tar -tf `pwd`/$ITEM | sed "s/.*/Extrahuji|tar -tf $ITEM \/\0|\/\0/" >> $DATA_FILE
    a tento už hází chybu (doplněno o tučný text)
    tar -tf `pwd`/$ITEM | sed "s/.*/Extrahuji|tar -tf `pwd`/$ITEM \/\0|\/\0/" >> $DATA_FILE
    sed: -e expression #1, char 26: unknown option to `s'
    co se mu nelíbí? díky
    31.7.2012 23:07 Marble | skóre: 27 | blog: marble
    Rozbalit Rozbalit vše Re: BASH-Tar a výpis do souboru
    Lomítko je oddělovač mezi hledanou částí, nahrazující částí a případnými parametry. Přidal jsi lomítko navíc, takže nahrazující část se bere jen po pwd a zbytek se sed snaží interpretovat jako parametry.

    Lomítko jde budto escapovat zpětným lomítkem tak jako máš u \0, anebo, v tomhle případě asi lépe, použít jako oddělovač jiný znak, který se nevyskytuje v hledaném ani nahrazovaném řetězci. Může to být cokoliv, prvním použitím za "s" se ten znak určí.
    31.7.2012 23:10 MM
    Rozbalit Rozbalit vše Re: BASH-Tar a výpis do souboru
    Tím lomítkem to nebude, nefunguje ani jeden příklad :(
    tar -tf `pwd`/$ITEM | sed "s/.*/Extrahuji|tar -tf `pwd`\/$ITEM \/\0|\/\0/" >> $DATA_FILE
    tar -tf `pwd`/$ITEM | sed "s/.*/Extrahuji|tar -tf `pwd` $ITEM \/\0|\/\0/" >> $DATA_FILE
    31.7.2012 23:19 Marble | skóre: 27 | blog: marble
    Rozbalit Rozbalit vše Re: BASH-Tar a výpis do souboru
    Ale bude, jenže to první lomítko je už v expanzi `pwd`. (Sakra, to tu musím počítat do 26 já? :) )
    31.7.2012 23:26 MM
    Rozbalit Rozbalit vše Re: BASH-Tar a výpis do souboru
    ale dyť tam to lomítko vůbec nemám a stejně to nejde a chyba je stejná :-(
    tar -tf `pwd`/$ITEM | sed "s/.*/Extrahuji|tar -tf `pwd` $ITEM \/\0|\/\0/" >> $DATA_FILE
    31.7.2012 23:33 Marble | skóre: 27 | blog: marble
    Rozbalit Rozbalit vše Re: BASH-Tar a výpis do souboru

    A co vyleze z `pwd`? Nejprve se provádí nahrazení, pak až spouštění příkazů. Hodí se občas použít v bashi set -x, čímž se zapne "debugovací" výpis s postupným prováděním řádky. Anebo prostě jen jednoduché echo "s/.*/Extrahuji|tar -tf `pwd` $ITEM \/\0|\/\0/".

    31.7.2012 23:41 MM
    Rozbalit Rozbalit vše Re: BASH-Tar a výpis do souboru
    tohle
    echo "s/.*/Extrahuji|tar -tf `pwd` $ITEM \/\0|\/\0/".
    mi vypíše tohle
    s/.*/Extrahuji|tar -tf /tmp/backup/http/ zaloha.tar.gz \/\0|\/\0/.
    31.7.2012 23:47 Marble | skóre: 27 | blog: marble
    Rozbalit Rozbalit vše Re: BASH-Tar a výpis do souboru
    Takže tam lomítko je, však? Dokonce tak, že první znak za ním je na 25. pozici, jak říká chybová hláška ...
    1.8.2012 00:16 MM
    Rozbalit Rozbalit vše Re: BASH-Tar a výpis do souboru
    Hm, tak že asi ze všeho nejdřív budu muset v proměnná pwd nahradit / za \/ a pak by to mohlo jít, mám pravdu? Tak já jdu hledat jak se to dělá :-( Díky za trpělivost
    1.8.2012 01:15 Marble | skóre: 27 | blog: marble
    Rozbalit Rozbalit vše Re: BASH-Tar a výpis do souboru

    No v bashi se dá k nahrazení použít úděsná konstrukce ${PWD//\//\\/}, ale v tomhle případě bych se raději podobným ascii-art výtvorům vyhnul a zvolil si nějaký vhodnější znak coby oddělovač pro sed, třeba dvojtečku: sed "s:.*:...$PWD...:" (proměnná $PWD obsahuje aktuální adresář, tady by šlo použít i `pwd`, ale ascii-artová šílenost nahoře pracuje jen s proměnnou), pokud tedy jde předpokládat, že v cestě nebude dvojtečka.

    Anebo na to jít úplně jinak, vzhledem k tomu, že cílem přidat text bez dalších úprav, dá se úplně vyhnout sed-u a použít něco jako: tar ... | while read; do echo "Extrahuji|tar -tf $PWD/$ITEM/$REPLY|/$REPLY/"; done

    (V proměnné $REPLY je načtena vždy jedna řádka z pipe pomocí příkazu read.)

    1.8.2012 11:49 darkenik
    Rozbalit Rozbalit vše Re: BASH-Tar a výpis do souboru
    lomitko sa tam dostane po vykonani a vlozeni vystupu z pwd ale sed moze mat oddelovac nie len lomitko

    takze by som skusil
    tar -tf `pwd`/$ITEM | sed "s@.*@Extrahuji|tar -tf `pwd` $ITEM /\0|/\0@" >> $DATA_FILE
    
    alebo
    tar -tf `pwd`/$ITEM | sed "s:.*:Extrahuji|tar -tf `pwd` $ITEM /\0|/\0:" >> $DATA_FILE
    
    alebo hocijaky iny oddelovac, ktory sa tam bude vyskytovat len tri krat BTW: tar -t len testuje archiv neextrahuje
    31.7.2012 22:38 Marble | skóre: 27 | blog: marble
    Rozbalit Rozbalit vše Re: BASH-Tar a výpis do souboru
    Ke čtení toho jde najít dost i česky. Konkrétně tady se hodí klíčové slovo "regulární výrazy" a fakt stojí za to si trochu počíst.

    Pár příkladů ... hnedka tady na portálu třeba: http://www.abclinuxu.cz/serialy/unixove-nastroje anebo http://www.abclinuxu.cz/serialy/bash; další zajímavý hodně zhuštěný text: http://atrey.karlin.mff.cuni.cz/~johanka/vyuka/pohadky_unix.html; seriál "u konkurence": http://www.root.cz/serialy/regularni-vyrazy/ ... atd.

    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.