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 03:00 | Nová verze

    Byla vydána nová verze 25.12.30 svobodného multiplatformního video editoru Shotcut (Wikipedie) postaveného nad multimediálním frameworkem MLT. Shotcut je vedle zdrojových kódů k dispozici také ve formátech AppImage, Flatpak a Snap.

    Ladislav Hagara | Komentářů: 0
    včera 18:55 | IT novinky

    Společnost Valve publikovala přehled To nej roku 2025 ve službě Steam aneb ohlédnutí za nejprodávanějšími, nejhranějšími a dalšími nej hrami roku 2025.

    Ladislav Hagara | Komentářů: 0
    včera 16:11 | Komunita

    Byly publikovány výsledky průzkumu mezi uživateli Blenderu uskutečněného v říjnu a listopadu 2025. Zúčastnilo se více než 5000 uživatelů.

    Ladislav Hagara | Komentářů: 0
    včera 03:33 | Bezpečnostní upozornění

    V dokumentově orientované databázi MongoDB byla nalezena a v upstreamu již opravena kritická bezpečností chyba CVE-2025-14847 aneb MongoBleed.

    Ladislav Hagara | Komentářů: 0
    29.12. 23:11 | IT novinky

    Při úklidu na Utažské univerzitě se ve skladovacích prostorách náhodou podařilo nalézt magnetickou pásku s kopií Unixu V4. Páska byla zaslána do počítačového muzea, kde se z pásky úspěšně podařilo extrahovat data a Unix spustit. Je to patrně jediný známý dochovaný exemplář tohoto 52 let starého Unixu, prvního vůbec programovaného v jazyce C.

    🇨🇽 | Komentářů: 1
    29.12. 15:55 | Komunita

    FFmpeg nechal kvůli porušení autorských práv odstranit z GitHubu jeden z repozitářů patřících čínské technologické firmě Rockchip. Důvodem bylo porušení LGPL ze strany Rockchipu. Rockchip byl FFmpegem na porušování LGPL upozorněn již téměř před dvěma roky.

    🇨🇽 | Komentářů: 7
    29.12. 15:44 | Zajímavý software

    K dispozici je nový CLI nástroj witr sloužící k analýze běžících procesů. Název je zkratkou slov why-is-this-running, 'proč tohle běží'. Klade si za cíl v 'jediném, lidsky čitelném, výstupu vysvětlit odkud daný spuštěný proces pochází, jak byl spuštěn a jaký řetězec systémů je zodpovědný za to, že tento proces právě teď běží'. Witr je napsán v jazyce Go.

    🇨🇽 | Komentářů: 1
    29.12. 15:33 | Zajímavý software

    Yazi je správce souborů běžící v terminálu. Napsán je v programovacím jazyce Rust. Podporuje asynchronní I/O operace. Vydán byl v nové verzi 25.12.29. Instalovat jej lze také ze Snapcraftu.

    Ladislav Hagara | Komentářů: 0
    26.12. 18:44 | Komunita

    Od soboty do úterý probíhá v Hamburku konference 39C3 (Chaos Communication Congress) věnovaná také počítačové bezpečnosti nebo hardwaru. Program (jiná verze) slibuje řadu zajímavých přednášek. Streamy a záznamy budou k dispozici na media.ccc.de.

    Ladislav Hagara | Komentářů: 0
    26.12. 13:22 | Zajímavý software

    Byl představen nový Xserver Phoenix, kompletně od nuly vyvíjený v programovacím jazyce Zig. Projekt Phoenix si klade za cíl být moderní alternativou k X.Org serveru.

    🇨🇽 | Komentářů: 7
    Kdo vám letos nadělí dárek?
     (31%)
     (1%)
     (26%)
     (1%)
     (1%)
     (1%)
     (11%)
     (10%)
     (17%)
    Celkem 204 hlasů
     Komentářů: 21, poslední včera 18:58
    Rozcestník

    Dotaz: BASH - nahrazení kódu

    31.7.2012 12:33 MM
    BASH - nahrazení kódu
    Přečteno: 270×
    Ahoj, mám takovej kód
    for ARRAY_NAME in "${DIRS[@]}"
    do
    ...
    done
    a potřeboval bych nahradit ${DIRS[@]} něčím jiným co by dokázalo načítat data ne z pole ale data ze souboru.. Děkuji

    Odpovědi

    31.7.2012 12:41 chrono
    Rozbalit Rozbalit vše Re: BASH - nahrazení kódu
    Cieľom je načítať riadky zo súboru do poľa, alebo postupne každý riadok do nejakej premennej, či niečo úplne iné?
    31.7.2012 12:45 MM
    Rozbalit Rozbalit vše Re: BASH - nahrazení kódu
    No potřebuji vypsat vždy jeden řádek přímo, bez ukládání do array
    for ARRAY_NAME in "${DIRS[@]}"
    do
     echo "$ARRAY_NAME"
    done
    31.7.2012 12:54 chrono
    Rozbalit Rozbalit vše Re: BASH - nahrazení kódu
    while read LINE
    do
            echo $LINE
    done < "./subor"
    
    prípadne
    cat "./subor" | while read LINE
    do
            echo $LINE
    done
    31.7.2012 12:53 NN
    Rozbalit Rozbalit vše Re: BASH - nahrazení kódu
    for LINE in $(cat file); do ...
    ?
    31.7.2012 13:17 MM
    Rozbalit Rozbalit vše Re: BASH - nahrazení kódu
    Díky moc, akorá ještě se mu něco nelíbí, ale netuším absolutně proč.. neví někdo? Dík :(

    TEMP_FILE="/tmp/temp.tmp"
    ROW_COUNT=$(wc -l $TEMP_FILE)
    
    i=0
    for ROW_NAME in "$(cat $TEMP_FILE)"
    do
     BAR=$(( 100*(++i)/$ROW_COUNT ))
     echo "$ROW_NAME"
     echo "$BAR"
    done
    line 53: 100*(++i)/43 /tmp/temp.tmp : division by 0 (error token is "/temp.tmp ")
    31.7.2012 13:25 MM
    Rozbalit Rozbalit vše Re: BASH - nahrazení kódu
    line 53 je v tomto případě tento řádek BAR=$(( 100*(++i)/$ROW_COUNT ))
    31.7.2012 13:29 Vojtěch Horký | skóre: 39 | blog: Vojtův zápisník | Praha
    Rozbalit Rozbalit vše Re: BASH - nahrazení kódu
    Problém vznikne na řádku s ROW_COUNT=$(wc -l $TEMP_FILE). Pusťte si tenhle příkaz (wc -l $TEMP_FILE) a uvidíte proč. Řešením je použít přesměrování
    wc -l < $TEMP_FILE
    nebo oříznout výstup cutem (například).
    I am always ready to learn although I do not always like to be taught. (W. Churchill)
    31.7.2012 13:28 rastos | skóre: 63 | blog: rastos
    Rozbalit Rozbalit vše Re: BASH - nahrazení kódu
    Pretože ROW_COUNT neobsahuje len počet riadkov, ale aj meno toho čo je v $TEMP_FILE.

    Skús:

    ROW_COUNT=$(wc -l < $TEMP_FILE)
    31.7.2012 13:50 MM
    Rozbalit Rozbalit vše Re: BASH - nahrazení kódu
    Super díky moc za pomoc ;-)

    PS: ještě jeden takový dotaz ohledně funkcí
    function foo {
     $NAME="/tmp/foo/foo/"
     $1 #tady se ma spustit: mkdir /tmp/foo/foo/
    }
    
    foo "mkdir $NAME"
    jak tady v tom foo "mkdir $NAME" zapsat tu proměnou aby se doplnila až v te funkci foo ? Zkoušel jsem to až všelijak ale fakt nevím. Díky
    foo "mkdir $NAME"
    foo "mkdir ""$NAME""
    foo "mkdir "\"$NAME"\"
    foo "mkdir "`$NAME`"
    atd..
    31.7.2012 13:57 chrono
    Rozbalit Rozbalit vše Re: BASH - nahrazení kódu
    Čo presne chceš vlastne urobiť? Tá funkcia foo má mať prvý parameter program, ktorý sa má spustiť a ďalší parameter / ďalšie parametre sa majú použiť ako argumenty toho programu?
    31.7.2012 14:07 MM
    Rozbalit Rozbalit vše Re: BASH - nahrazení kódu
    Více méně ano, ta funkce foo plní ty proměnné $NAME a musí ji přiřadit do toho příkazu v tomto případě do mkdir. Čili jak píšete potřebuji funkci foo předat příkaz který má spustit ale argument si musí funkce foo dosadit sama. Díky
    31.7.2012 14:12 MM
    Rozbalit Rozbalit vše Re: BASH - nahrazení kódu
    Té funkci foo předávám pouze ten příkaz mkdir ale taky budu předávat daleko složitější příkazy, tak potřebuji vřdy doplnit tu promměnou třeba tuto
    [ ! -d $NAME ] && mkdir $NAME
    31.7.2012 14:14 chrono
    Rozbalit Rozbalit vše Re: BASH - nahrazení kódu
    Nebude jednoduchšie tú funkciu použiť len na načítanie tých údajov a tie príkazy potom používať priamo?
    31.7.2012 14:12 chrono
    Rozbalit Rozbalit vše Re: BASH - nahrazení kódu
    Ja osobne by som to, veľmi pravdepodobne urobil úplne inak, každopádne použiť sa dá napr. eval (v tej funkcii sa namiesto $1 použije $(eval $1)a samotné volanie potom bude foo "mkdir \$NAME"
    31.7.2012 14:24 MM
    Rozbalit Rozbalit vše Re: BASH - nahrazení kódu
    Já bych to taky udělal jinak, předal bych třeba jen nějakou číselnou hodnotu třeba 1 a pak bych použil if switch který by provedl přesně to co potřebuji, bohužel ta funkce mimo jiné obsahuje nezmíněný kód který mi nedovolí daný switch použít. :(
    cat <<EOF
    XXX
    $BAR
    Vytvářím: $NAME
    XXX
    EOF

    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.