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:22 | Bezpečnostní upozornění

    Úřad pro ochranu osobních údajů řeší desítky stížností na jednotné měsíční hlášení zaměstnavatele, které stát spustil počátkem dubna. Systém, jenž má firmám odlehčit od desítek formulářů, nejenže výrazně zatížil jejich účetní oddělení, ale docházelo v něm i k únikům osobních dat zaměstnanců k firmám, kde nepracovali. Podle ministerstva práce a sociálních věcí stála za problémem technická chyba. „Incident se týkal několika stovek

    … více »
    Ladislav Hagara | Komentářů: 0
    dnes 10:46 | Nová verze

    Byla vydána (𝕏, Bluesky) nová verze 22.0.0 open source webového aplikačního frameworku Angular (Wikipedie). Přehled novinek v příspěvku na blogu.

    Ladislav Hagara | Komentářů: 0
    dnes 04:33 | Nová verze

    Vim Classic byl vydán ve verzi 8.3. Drew DeVault oznámil tento fork editoru Vim (verze 8.2.0148, tj. těsně před zavedením Vim9 skriptování) v březnu letošního roku. Důvodem forku bylo, že vývojáři editorů Vim a Neovim začali při vývoji využívat LLM.

    Ladislav Hagara | Komentářů: 4
    dnes 03:44 | Komunita

    Open source konference DevConf.CZ 2026 proběhne 18. a 19. června v Brně na FIT VUT. Publikován byl program a spuštěna byla registrace.

    Ladislav Hagara | Komentářů: 0
    včera 19:44 | Nová verze

    Společnost JetBrains uvolnila verzi 2 svého open-source velkého jazykového modelu (LLM) pro vývojáře Mellum.

    Ladislav Hagara | Komentářů: 0
    včera 14:44 | IT novinky

    Probíhá konference Microsoft Build 2026. Microsoft představuje své novinky: kvantový čip Majorana 2, Surface Laptop Ultra a Surface RTX Spark Dev Box s NVIDIA RTX Spark, Intelligent Terminal, Coreutils for Windows (fork Rust Coreutils), AI modely MAI, AI agenta Scout, platformu pro agent-first zařízení Project Solara, …

    Ladislav Hagara | Komentářů: 0
    včera 12:44 | Nová verze

    Google Chrome 149 byl prohlášen za stabilní. Nejnovější stabilní verze 149.0.7827.53 přináší řadu novinek. Podrobný přehled v poznámkách k vydání. Vylepšeny byly také nástroje pro vývojáře.

    Ladislav Hagara | Komentářů: 0
    včera 10:55 | Nová verze

    Pluto.jl, reaktivní notebook pro programovací jazyk Julia, dospěl do verze 1.0.

    Ladislav Hagara | Komentářů: 4
    2.6. 13:44 | Nová verze

    Byla vydána nová verze 12.0.0 vizuálního programovacího jazyka Snap! (Wikipedie) inspirovaného jazykem Scratch (Wikipedie). Přehled novinek na GitHubu.

    Ladislav Hagara | Komentářů: 0
    2.6. 11:44 | IT novinky

    Počítačovou hru Gravity Circuit (ProtonDB) lze do 14. června do 19:00 získat na Steamu zdarma. Napořád.

    Ladislav Hagara | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (12%)
     (8%)
     (2%)
     (15%)
     (31%)
     (4%)
     (6%)
     (3%)
     (15%)
     (26%)
    Celkem 1816 hlasů
     Komentářů: 30, poslední 3.4. 20:20
    Rozcestník


    Dotaz: BASH a getopts

    3.8.2010 07:37 ext3fs
    BASH a getopts
    Přečteno: 857×
    Ahoj,

    premyslim jak v BASHi pomoci getopts pracovat s argumenty prikazoveho radku v tomto duchu:
    ./script [option1] [NAME1,NAME2,...] [option2]
    
    napr: ./script -a soubor1 soubor2 soubor3 -x
    
    Jde neco takoveho vyresit pomoci getopts bez vymysleni vlastnich rutin pro parsovani argumentu?

    Pomoci tohoto pristupu:
    
    while getopts "a:" OPT
    do
        case $OPT in
        a)
            for I in ${OPTARG}
            do
                echo $I
            done
        esac
    done
    
    
    mam v OPTARG vzdy aktualni argument, ale ne pole argumentu...

    Odpovědi

    3.8.2010 11:37 volvox | skóre: 16
    Rozbalit Rozbalit vše Re: BASH a getopts
    AFAIK nejde.

    Buď uzavřete argument do uvozovek (pak bude skript fungovat, jak má), případně jako oddělovač použít čárku, nebo volbu chápat jako cestu k souboru se seznamem souborů a nebo (pokud je tam možnost, tak asi nejlepší řešení) nechat seznam souborů jako parametr (tj. bez volby):

    ./script [OPTIONS] [FILE...]

    Jinak by vám nezbylo, než si argumenty sám parsovat, ale to bych nedoporučoval - použitá syntaxe je hodně nestandardní, v rámci linuxu jedinečná, řekl bych.
    3.8.2010 12:09 ext3fs
    Rozbalit Rozbalit vše Re: BASH a getopts
    Nestandardni mozna je, ale pouziva ji (nebo podobne syntaxe) spousta nastroju...jmenovite co si z hlavy vzpomenu tak: yum, rsync, apt-get, du, ...
    3.8.2010 19:39 volvox | skóre: 16
    Rozbalit Rozbalit vše Re: BASH a getopts
    Tak to patrně myslíte tu poslední možnost, kterou jsem nastínil, nebo opravdu máte příklad použití s podobnou syntaxí jako v otázce?
    4.8.2010 06:22 zulu
    Rozbalit Rozbalit vše Re: BASH a getopts
    Nepouziva.
    4.8.2010 06:58 ext3fs
    Rozbalit Rozbalit vše Re: BASH a getopts
    A proc by ne?

    rpm -i balik1 balik2 balik3 --force
    4.8.2010 07:23 dustin | skóre: 63 | blog: dustin
    Rozbalit Rozbalit vše Re: BASH a getopts
    Nejsou ale ty balíky parametr rpm, spíš než přepínače -i? Tedy třeba rpm -i --force balik1 balik2 balik3
    4.8.2010 07:30 ext3fs
    Rozbalit Rozbalit vše Re: BASH a getopts
    Ano jsou. Slo mi presne o to zadavat parametry a prepinace v tomto duchu. Aby prosla prvni i druha varianta. A otazka tedy byla, zda se o to getopts stara. Odpoved je z diskuse jasna.
    3.8.2010 13:58 Semo | skóre: 45 | blog: Semo
    Rozbalit Rozbalit vše Re: BASH a getopts
    Da sa. getopts spracuva argument cislo OPTIND. Takze pri -a si napises parsovanie sam az do narazenia na argument zacinajuci na -. Posunies OPTIND a zase zavolas getopts.
    If you hold a Unix shell up to your ear, you can you hear the C.
    3.8.2010 20:00 volvox | skóre: 16
    Rozbalit Rozbalit vše Re: BASH a getopts
    Ano, takto by to šlo, řekl bych, že je to tak někde na půl cesty mezi použitím getopts a vlastním parsováním. Ale stejně si myslím, že to není dobrý nápad. getopts se používá na options, tj. volby/přepínače, vstupní parametry pro skript by se takto IMHO předávat neměly.

    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.