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:55 | IT novinky

    Poslanci Evropského parlamentu dnes vyzvali k výraznému zvýšení ochrany nezletilých na internetu, včetně zákazu vstupu na sociální sítě pro osoby mladší 16 let. Legislativně nezávazná zpráva, kterou dnes odsouhlasil Evropský parlament poměrem 493 hlasů pro ku 92 proti, kromě zavedení věkové hranice 16 let pro využívání sociálních sítí, platforem pro sdílení videí či společníků s umělou inteligencí (AI) vyzývá také k zákazu … více »

    Ladislav Hagara | Komentářů: 4
    dnes 14:11 | Humor

    Doom v KiCadu nebo na osciloskopu? Žádný problém: KiDoom: Running DOOM on PCB Traces a ScopeDoom: DOOM on an Oscilloscope via Sound Card.

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

    Po AlmaLinuxu byl v nové stabilní verzi 10.1 vydán také Rocky Linux. Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    dnes 04:00 | Zajímavý software

    Open source reimplementace počítačových her Tomb Raider I a Tomb Raider II spolu s dalšími vylepšeními a opravami chyb TRX byla vydána ve verzi 1.0. Jedná se o sloučení projektů / enginů TR1X a TR2X do jednoho TRX. Videoukázka na YouTube.

    Ladislav Hagara | Komentářů: 1
    včera 17:00 | IT novinky

    Společnost Seznam.cz spouští konverzační nástroj založený na umělé inteligenci Seznam Asistent. Asistent využívá vlastní jazykový model SeLLMa a dočasně i komerční modely od OpenAI provozované v evropských datacentrech prostřednictvím Microsoft Azure. Dlouhodobým cílem Seznamu je provozovat Asistenta výhradně na interních jazykových modelech a ve vlastních datových centrech.

    Ladislav Hagara | Komentářů: 6
    včera 11:55 | Zajímavý software

    Software LibrePods osvobozuje bezdrátová sluchátka AirPods z ekosystému Applu. Exkluzivní funkce AirPods umožňuje využívat na Androidu a Linuxu. Díky zdokumentování proprietárního protokolu AAP (Apple Accessory Protocol).

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

    Byl vydán AlmaLinux OS 10.1 s kódovým názvem Heliotrope Lion. S podporou Btrfs. Podrobnosti v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    včera 04:33 | Komunita

    Placená služba prohledávání zprostředkovatelů dat a automatického odstraňování uniklých osobních údajů Mozilla Monitor Plus bude 17. prosince ukončena. Bezplatná monitorovací služba Mozilla Monitor bude i nadále poskytovat okamžitá upozornění a podrobné pokyny k omezení rizik úniku dat. Služba Mozilla Monitor Plus byla představena v únoru loňského roku.

    Ladislav Hagara | Komentářů: 0
    24.11. 22:44 | Nová verze

    Waydroid (Wikipedie, GitHub) byl vydán v nové verzi 1.6.0. Waydroid umožňuje spouštět aplikace pro Android na běžných linuxových distribucích. Běhové prostředí vychází z LineageOS.

    Ladislav Hagara | Komentářů: 4
    24.11. 15:44 | Nová verze

    Příspěvek na blogu Raspberry Pi představuje novou kompletně přepracovanou verzi 2.0 aplikace Raspberry Pi Imager (YouTube) pro stažení, nakonfigurování a zapsání obrazu operačního systému pro Raspberry Pi na SD kartu. Z novinek lze vypíchnout volitelnou konfiguraci Raspberry Pi Connect.

    Ladislav Hagara | Komentářů: 3
    Jaké řešení používáte k vývoji / práci?
     (35%)
     (46%)
     (19%)
     (18%)
     (22%)
     (15%)
     (23%)
     (16%)
     (17%)
    Celkem 401 hlasů
     Komentářů: 17, poslední 19.11. 21:57
    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.