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í
×
    včera 22:00 | Komunita

    V červenci loňského roku organizace Apache Software Foundation (ASF) oznámila, že se částečně přestane dopouštět kulturní apropriace a změní své logo. Dnes bylo nové logo představeno. "Indiánské pírko" bylo nahrazeno dubovým listem a text Apache Software Foundation zkratkou ASF. Slovo Apache se bude "zatím" dál používat. Oficiální název organizace zůstává Apache Software Foundation, stejně jako názvy projektů, například Apache HTTP Server.

    Ladislav Hagara | Komentářů: 3
    včera 17:33 | Nová verze

    Byla vydána (𝕏) srpnová aktualizace aneb nová verze 1.104 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.104 vyjde také VSCodium, tj. komunitní sestavení Visual Studia Code bez telemetrie a licenčních podmínek Microsoftu.

    Ladislav Hagara | Komentářů: 0
    včera 15:33 | IT novinky

    Spotify spustilo přehrávání v bezztrátové kvalitě. V předplatném Spotify Premium.

    Ladislav Hagara | Komentářů: 0
    včera 15:00 | IT novinky

    Spoluzakladatel a předseda správní rady americké softwarové společnosti Oracle Larry Ellison vystřídal spoluzakladatele automobilky Tesla a dalších firem Elona Muska na postu nejbohatšího člověka světa. Hodnota Ellisonova majetku díky dnešnímu prudkému posílení ceny akcií Oraclu odpoledne vykazovala nárůst o více než 100 miliard dolarů a dosáhla 393 miliard USD (zhruba 8,2 bilionu Kč). Hodnota Muskova majetku činila zhruba 385 miliard dolarů.

    Ladislav Hagara | Komentářů: 1
    10.9. 21:22 | Nová verze

    Bylo vydáno Eclipse IDE 2025-09 aneb Eclipse 4.37. Představení novinek tohoto integrovaného vývojového prostředí také na YouTube.

    Ladislav Hagara | Komentářů: 0
    10.9. 18:22 | IT novinky

    T-Mobile od 15. září zpřístupňuje RCS (Rich Communication Services) zprávy i pro iPhone.

    Ladislav Hagara | Komentářů: 3
    10.9. 13:22 | IT novinky

    Společnost ARM představila platformu Arm Lumex s Arm C1 CPU Cluster a Arm Mali G1-Ultra GPU pro vlajkové chytré telefony a počítače nové generace.

    Ladislav Hagara | Komentářů: 0
    10.9. 05:44 | Nová verze

    Unicode Consortium, nezisková organizace koordinující rozvoj standardu Unicode, oznámila vydání Unicode 17.0. Přidáno bylo 4 803 nových znaků. Celkově jich je 159 801. Přibylo 7 nových Emoji.

    Ladislav Hagara | Komentářů: 0
    9.9. 21:00 | IT novinky Ladislav Hagara | Komentářů: 17
    9.9. 18:33 | Nová verze

    Realtimová strategie Warzone 2100 (Wikipedie) byla vydána ve verzi 4.6.0. Podrobný přehled novinek, změn a oprav v ChangeLogu na GitHubu. Nejnovější verzi Warzone 2100 lze již instalovat také ze Snapcraftu a Flathubu.

    Ladislav Hagara | Komentářů: 1
    Pro otevření více webových stránek ve webovém prohlížečí používám
     (83%)
     (7%)
     (2%)
     (2%)
     (4%)
     (2%)
    Celkem 164 hlasů
     Komentářů: 12, poslední 10.9. 13:00
    Rozcestník

    Dotaz: bash - expanze s mezerami

    4.11.2013 19:33 mikky | skóre: 25 | blog: Ghlog | M. L. - Praha
    bash - expanze s mezerami
    Přečteno: 328×
    ahoj, potřebuju nakopnout s expanzí * v bashi se zachováním správného počtu parametrů (v názvech souborů jsou mezery):
    for i in *html; do 
    	a=${i%.html}; 
    	mkdir "$a"; 
    	mv $a* "$a"; #tady je problém
    done
    
    v $a může být řetězec třeba "technická specifikace A7Z46" a v aktuálním adreáři je několik souborů s tímhle názvem a různými příponami (obrázky, schemata, dokumenty, etc.). Potřebuju je všechny přesunout do podadresáře s příslušným jménem. Bash provede u mv expanzi, ale už z toho neudělá uzavřené parametry (neudělá si okolo toho "uvozovky"), takže mv to dostane rozporcovaný po mezerách a ne po ucelených názvech.

    Vím že by to šlo udělat spoustou metod (xarxgs, znovuvnoření cyklu for jako na začátku, skrz hashe, nebo něco na ten způsob), ale mě zajímá, jestli se dá bash donutit, aby to po expanzi i správně tokenizoval, resp. udělat řešení, se kterým by si bez externích utilit (xargs) poradil i obyčejný sh (vylučuje např. ty hashe).

    dík za tipy,

    -m.
    Je vám méně než 30 ? (jsme vrstevnící => budeme si tykat) : (jsem pro vás bažant => můžete mi tykat);

    Odpovědi

    4.11.2013 20:49 potato
    Rozbalit Rozbalit vše Re: bash - expanze s mezerami
    Základní problém příkazu
    mv $a* "$a"
    nejsou ani mezery, ale to, že se snaží přesunout $a sám do sebe, což nejde. Pokud ty věci k přesunutí mají vždy nějaké přípony, tak například
    mv "$a".* "$a"
    4.11.2013 20:58 mikky | skóre: 25 | blog: Ghlog | M. L. - Praha
    Rozbalit Rozbalit vše Re: bash - expanze s mezerami
    máš pravdu, ale nevíš o tom :)

    uvozovky okolo proměnný s hvězdičkou za mě asi jako jediná kombinace nenapadla a kupodivu funguje, nicméně příčina nefunkčnosti předchozího není ta, která píšeš - přesun do sebe sama je úplně jinej problém, kterej tady vůbec neřešim a kterej pro mě žádnej problém (krom chybový hlášky o tom, že to nejde) v běhu skriptu nezpůsobuje. Problém skutečně je ten, který jsem popisoval - expanze se provede bez ohledu na tokenizaci, resp. tokenizuje se po mezerách a neřeší se, kde se tam vzaly - ty uvozovky to vyřeší tak, že znaky z $IFS se v uvozovkách ignorují.

    no nic, jdu chvíli mlátit hlavou do zdi..

    každopádně dík, pomohls!

    Je vám méně než 30 ? (jsme vrstevnící => budeme si tykat) : (jsem pro vás bažant => můžete mi tykat);
    4.11.2013 21:32 potato
    Rozbalit Rozbalit vše Re: bash - expanze s mezerami
    kterej pro mě žádnej problém (krom chybový hlášky o tom, že to nejde) v běhu skriptu nezpůsobuje
    Co na to říci. Snad jen, že přeji spoustu zábavy se skripty, které se ‚najednou začaly chovat divně‘...

    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.