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 18:11 | Nová verze

    Byla vydána verze 6.0 webového aplikačního frameworku napsaného v Pythonu Django (Wikipedie). Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    dnes 05:55 | Nová verze

    Po více než 7 měsících vývoje od vydání verze 6.8 byla vydána nová verze 6.9 svobodného open source redakčního systému WordPress. Kódové jméno Gene bylo vybráno na počest amerického jazzového klavíristy Gene Harrise (Ray Brown Trio - Summertime).

    Ladislav Hagara | Komentářů: 10
    dnes 05:11 | Komunita

    Na čem pracují vývojáři webového prohlížeče Ladybird (GitHub)? Byl publikován přehled vývoje za listopad (YouTube).

    Ladislav Hagara | Komentářů: 0
    dnes 01:55 | Nová verze

    Google Chrome 143 byl prohlášen za stabilní. Nejnovější stabilní verze 143.0.7499.40 přináší řadu novinek z hlediska uživatelů i vývojářů. Podrobný přehled v poznámkách k vydání. Opraveno bylo 13 bezpečnostních chyb.

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

    Společnost Valve aktualizovala přehled o hardwarovém a softwarovém vybavení uživatelů služby Steam. Podíl uživatelů Linuxu dosáhl 3,2 %. Nejčastěji používané linuxové distribuce jsou Arch Linux, Linux Mint a Ubuntu. Při výběru jenom Linuxu vede SteamOS Holo s 26,42 %. Procesor AMD používá 66,72 % hráčů na Linuxu.

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

    Canonical oznámil (YouTube), že nově nabízí svou podporu Ubuntu Pro také pro instance Ubuntu na WSL (Windows Subsystem for Linux).

    Ladislav Hagara | Komentářů: 0
    včera 13:11 | IT novinky

    Samsung představil svůj nejnovější chytrý telefon Galaxy Z TriFold (YouTube). Skládačka se nerozkládá jednou, ale hned dvakrát, a nabízí displej s úhlopříčkou 10 palců. V České republice nebude tento model dostupný.

    Ladislav Hagara | Komentářů: 4
    včera 12:33 | Nová verze

    Armbian, tj. linuxová distribuce založená na Debianu a Ubuntu optimalizovaná pro jednodeskové počítače na platformě ARM a RISC-V, ke stažení ale také pro Intel a AMD, byl vydán ve verzi 25.11.1. Přehled novinek v Changelogu.

    Ladislav Hagara | Komentářů: 1
    včera 04:00 | Nová verze

    Byla vydána nová verze 15.0 svobodného unixového operačního systému FreeBSD. Podrobný přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 7
    včera 03:00 | Nová verze

    UBports, nadace a komunita kolem Ubuntu pro telefony a tablety Ubuntu Touch, vydala Ubuntu Touch 24.04 1.1 a 20.04 OTA-11. Vedle oprav chyb a drobných vylepšení je řešen také středně závažný bezpečnostní problém.

    Ladislav Hagara | Komentářů: 0
    Jaké řešení používáte k vývoji / práci?
     (34%)
     (47%)
     (19%)
     (18%)
     (23%)
     (15%)
     (25%)
     (16%)
     (18%)
    Celkem 426 hlasů
     Komentářů: 18, poslední včera 18:34
    Rozcestník

    Dotaz: getopts v shellu

    23.2.2010 18:44 jirka36 | skóre: 2
    getopts v shellu
    Přečteno: 2307×
    zdravim mam takovy problem a nevim jak si s nim poradit. Kdyz chci pouzit na zpracovani parametru cmd line pouzit funkce getopts kdy se nejdriv ma vykonat prvni prepinac a posleze druhy s nejakym regularnim vyrazem

    napr. ./mujscript.sh -ab.

    jak to mam udelat?

    Odpovědi

    23.2.2010 19:02 Ash | skóre: 53
    Rozbalit Rozbalit vše Re: getopts v shellu
    Nějak jsem nepochopil jak se to co popisujete liší od normálního použití getopts?
    24.2.2010 15:12 jirka36 | skóre: 2
    Rozbalit Rozbalit vše Re: getopts v shellu

    Zdaravím mám takovýhle kus kodu

    ...smazáno na žádost tazatele...

    A moje otazka zni. Kdyz spustim skript takto ./mujskript.sh -ew. ls tak by se mel vykonat strace ls a z vypisu vysekat radky ktere vyhovuji prepinacum....Ale me se spusti strace -w misto strace ls...jak udelam aby se to chovalo spravne....

    24.2.2010 15:42 chochi | skóre: 29 | Praha
    Rozbalit Rozbalit vše Re: getopts v shellu
    Ahoj,

    Tak tady bude problem ten strace -f "$@", kde v promene $@ budou vsechny parametry, tzn.bude se rovnat -ew. ls, takze se zavola:
    strace -f -ew. ls.
    Pokud vim tak tohle nepujde jednoduse s getops udelat.
    Jako navrh bych udelal, ze parameter pro strace bude jako prvni, takze se bude volat napr:
    ./mujskript.sh "ls -la" -ew.
    A pak v kodu bude (+osetreni pripadu, kdyz nebude zadny parametr):
    ...
    STRACE_ARGS=$1
    shift
    while getopts "ew:r:v:" param; do
    case $param in
    e)
    echo "=== RUN PROCESS ==="   
    strace -f $STRACE_ARGS 2>&1| grep "execve("| grep  "= -1 ENOENT" -v| sed 's/"/ /g'| awk '{ print $2 }'| sort| uniq
    ;;
    ...
    
    Fuky avatar 24.2.2010 10:33 Fuky | skóre: 52 | blog: 4u
    Rozbalit Rozbalit vše Re: getopts v shellu

    Máš na mysli realizaci "zkrácených voleb" jako to umí např. tar nebo ps?

    $ tar zxf archive.tgz
    $ ps aux
    
    24.2.2010 13:58 chochi | skóre: 29 | Praha
    Rozbalit Rozbalit vše Re: getopts v shellu
    Neco takovehleho (dulezita je ta dvojtecka):
    while getopts "ab:" C; do
      case $C in
        a) echo "A";;
        b) echo "B: " $OPTARG;;
      esac;
    done
    
    S tim ze to pak funguje takhle:
    $ for T in "-a" "-a -b" "-a -b xx" "-abyy" "-ba" "-ba -a"; do echo "Calling with: $T";  bash -c 'while getopts "ab:" C; do case $C in a) echo "A";; b) echo "B: " $OPTARG;; esac; done' -- $T; done
    
    Calling with: -a
    A
    Calling with: -a -b
    A
    --: option requires an argument -- b
    Calling with: -a -b xx
    A
    B:  xx
    Calling with: -abyy
    A
    B:  yy
    Calling with: -ba
    B:  a
    Calling with: -ba -a
    B:  a
    A
    
    24.2.2010 21:56 Semo | skóre: 45 | blog: Semo
    Rozbalit Rozbalit vše Re: getopts v shellu
    Netusim co sa pytas, ale tu mas ukazku pouzitia getops:
    while getopts "f:ho:v" flag; do
        case "$flag" in
        f) fps="$OPTARG"
            ;;
        h) printusage
            exit 0
            ;;
        o) output="$OPTARG"
            ;;
        v) videoonly=yes
            ;;
        *) printusage
            exit 1
            ;;
        esac
    done
    
    shift "$((OPTIND - 1))"
    If you hold a Unix shell up to your ear, you can you hear the C.
    25.2.2010 00:03 jirka36 | skóre: 2
    Rozbalit Rozbalit vše Re: getopts v shellu
    ted bych potreboval poradit jak nazvat vetev ktera se provede kdyz nezadam zadny parametr? zkousel sem tyto vetve "?)", "*)", ":)" ani jedna to nesplnila

    pr. ./skript.sh --> spusteni bez parametru, vypis help

    Fuky avatar 25.2.2010 00:30 Fuky | skóre: 52 | blog: 4u
    Rozbalit Rozbalit vše Re: getopts v shellu
    25.2.2010 13:58 jirka36 | skóre: 2
    Rozbalit Rozbalit vše Re: getopts v shellu
    jj na to jsem taky prisel ale spis me znamenalo jestli neni nejaka vetev v tom getopts ktera by ten help spustila.... ale asi nic takovyho neni takze to stejne udelam pres ten $#

    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.