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 14:44 | IT novinky

    Na Seznam nepovolených internetových her (Wikipedie) se k 13. 7. 2026 dostala predikční platforma Polymarket.

    Ladislav Hagara | Komentářů: 2
    dnes 14:22 | Zajímavý článek

    Nová čísla časopisů od nakladatelství Raspberry Pi zdarma ke čtení: Raspberry Pi Official Magazine 167 (pdf) a Hello World 30 (pdf).

    Ladislav Hagara | Komentářů: 0
    dnes 00:44 | Nová verze

    Byla vydána nová verze 3.22.0 grafického vývojového prostředí a platformy Gambas (Wikipedie) založené na interpretru programovacího jazyka Basic s rozšířením o objektově orientované programování. Přehled novinek v poznámkách k vydání. Zdrojové kódy jsou k dispozici na GitLabu.

    Ladislav Hagara | Komentářů: 0
    včera 20:22 | Komunita

    FreeBSD odstranilo poslední GPL kód ze základního systému. Konkrétně dpv, libdpv, libfigpar a dialog. Instalátor před čtyřmi lety přešel z dialogu na bsddialog.

    Ladislav Hagara | Komentářů: 2
    včera 15:22 | IT novinky

    Sociální síti 𝕏 (dříve Twitter) má dnes 20 let. Pro veřejnost byla zpřístupněna 15. července 2006.

    Ladislav Hagara | Komentářů: 2
    včera 14:22 | Zajímavý software

    Insula Faktury je open source generátor faktur, který běží přímo ve webovém prohlížeči. Žádná registrace, žádné sledování, žádné omezení. Zdrojové kódy jsou k dispozici na Codebergu.

    Ladislav Hagara | Komentářů: 17
    včera 13:22 | Komunita

    První Mobile Linux Hackday v Plzni, tj. komunitní setkání věnované Linuxu na mobilních zařízeních, proběhne 24. července od 10:00. Akce je otevřená všem zájemcům – od zvědavců po zkušené vývojáře. Dopoledne proběhnou přednášky Davida Heidelberga a Petra Hodiny o aktuálním stavu mobilního Linuxu: proč vůbec chtít tučňáka v kapse, jaké telefony jsou dnes dobře podporované a co taková podpora obnáší. Po obědě se zaměříme na konkrétní

    … více »
    Ladislav Hagara | Komentářů: 0
    14.7. 19:33 | Nová verze

    3D software Blender byl vydán ve verzi 5.2 s prodlouženou podporou. Videopředstavení na YouTube.

    Ladislav Hagara | Komentářů: 0
    14.7. 16:55 | Zajímavý software

    SketchForge 3D (GitHub, reddit) je open source 3D editor / CAD běžící ve webovém prohlížeči bez nutnosti účtu nebo cloudového úložiště. Inspirovaný byl Tinkercadem. Doporučena je lokální instalace.

    Ladislav Hagara | Komentářů: 0
    14.7. 12:44 | Nová verze

    Byla vydána nová verze 11.9 webového prohlížeče Midori (Wikipedie, GitHub). S novým centrem ovládání, pokročilejším blokováním reklam, optimalizací výkonu…

    Ladislav Hagara | Komentářů: 1
    Které desktopové prostředí na Linuxu používáte?
     (11%)
     (7%)
     (2%)
     (17%)
     (31%)
     (4%)
     (6%)
     (2%)
     (15%)
     (25%)
    Celkem 2144 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: 880×
    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.