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

    Korespondenční seminář z programování (KSP) pražského Matfyzu pořádá i letos jarní soustředění pro začátečníky. Zváni jsou všichni středoškoláci a starší základoškoláci, kteří se chtějí naučit programovat, lépe uvažovat o informatických úlohách a poznat nové podobně smýšlející kamarády. Úplným začátečníkům bude určen kurz základů programování a kurz základních algoritmických dovedností, pokročilejším nabídneme různorodé

    … více »
    Vladimir Sklenár | Komentářů: 0
    včera 17:33 | Zajímavý článek

    Joe Brockmeier z Linux Weekly News vyzkoušel různé forky webového prohlížeče Mozilla Firefox: především GNU IceCat, Floorp, LibreWolf a Zen. V článku shrnuje, v čem se liší od výchozí konfigurace Firefoxu, co mají za vlastní funkcionalitu, jak a kým jsou udržované atd.

    Fluttershy, yay! | Komentářů: 3
    15.3. 19:22 | Nová verze

    Byl vydán Debian 12.10, tj. desátá opravná verze Debianu 12 s kódovým názvem Bookworm. Řešeny jsou především bezpečnostní problémy, ale také několik vážných chyb. Instalační média Debianu 12 lze samozřejmě nadále k instalaci používat. Po instalaci stačí systém aktualizovat.

    Ladislav Hagara | Komentářů: 0
    15.3. 18:22 | Nová verze

    Byla vydána nová verze 4.5 svobodného notačního programu MuseScore (Wikipedie). Představení novinek v oznámení v diskusním fóru a také na YouTube.

    Ladislav Hagara | Komentářů: 0
    15.3. 17:00 | Nová verze

    Byla vydána nová verze 8.6.0 správce sbírky fotografií digiKam (Wikipedie). Přehled novinek i s náhledy v oficiálním oznámení (NEWS). Nejnovější digiKam je ke stažení také jako balíček ve formátu AppImage. Stačí jej stáhnout, nastavit právo ke spuštění a spustit.

    Ladislav Hagara | Komentářů: 0
    15.3. 04:44 | Komunita

    O víkendu probíhá v Praze na Karlově náměstí 13 konference Installfest 2025. Na programu je celá řada zajímavých přednášek a workshopů. Vstup je zdarma. Přednášky lze sledovat i online na YouTube.

    Ladislav Hagara | Komentářů: 1
    14.3. 22:11 | Nová verze

    Byla vydána nová verze 2.49.0 distribuovaného systému správy verzí Git. Přispělo 89 vývojářů, z toho 24 nových. Přehled novinek v příspěvku na blogu GitHubu a v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    14.3. 19:00 | IT novinky

    Premiér Petr Fiala (ODS) dnes na síti X vyloučil, že by za jeho vlády mohla začít platit vyhláška, podle níž by poskytovatelé internetového připojení měli uchovávat adresy internetových stránek, na které se lidé připojují.

    Ladislav Hagara | Komentářů: 5
    14.3. 12:33 | Komunita

    Flock 2025, tj. konference pro přispěvatele a příznivce Fedory, proběhne od 5. do 8. června v Praze.

    Ladislav Hagara | Komentářů: 0
    13.3. 17:29 | Komunita

    Zemřel Mark Klein, který dlouhá léta pracoval pro telekomunikační firmu AT&T a proslavil se jako whistleblower, když zveřejnil informace o spolupráci AT&T s agenturou NSA. Cílem spolupráce bylo sledovat veškerou komunikaci občanů za pomocí zařízeních v místnosti 641A. O spolupráci obou subjektů napsal knihu Wiring Up The Big Brother Machine...And Fighting It.

    Max | Komentářů: 0
    Jaké je vaše preferované prostředí?
     (26%)
     (1%)
     (1%)
     (1%)
     (1%)
     (2%)
     (65%)
     (2%)
    Celkem 148 hlasů
     Komentářů: 5, poslední 13.3. 11:45
    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: 323×
    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.