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:44 | Komunita

    V Bolzanu probíhá konference SFSCON (South Tyrol Free Software Conference). Jean-Baptiste Kempf, zakladatel a prezident VideoLAN a klíčový vývojář VLC media playeru, byl na ní oceněn cenou European SFS Award 2025 udělovanou Free Software Foundation Europe (FSFE) a Linux User Group Bolzano‑Bozen (LUGBZ).

    Ladislav Hagara | Komentářů: 1
    dnes 02:44 | Zajímavý projekt

    Open-source minimalistický trackball Ploopy Nano byl po modelech modelech Classic a Thumb Trackball také aktualizován. Nová verze Nano 2 používá optický senzor PAW3222 a k původně beztlačítkovému designu přidává jedno tlačítko, které ve výchozí konfiguraci firmwaru QMK přepíná režim posouvání koulí. Sestavený trackball nyní vyjde na 60 kanadských dolarů (bez dopravy a DPH).

    |🇵🇸 | Komentářů: 3
    včera 14:22 | Zajímavý článek

    Github publikoval Octoverse 2025 (YouTube), tj. každoroční přehled o stavu open source a veřejných softwarových projektů na GitHubu. Každou sekundu se připojil více než jeden nový vývojář. Nejpoužívanějším programovacím jazykem se stal TypeScript.

    Ladislav Hagara | Komentářů: 0
    včera 09:55 | Komunita

    Kit je nový maskot webového prohlížeče Firefox.

    Ladislav Hagara | Komentářů: 14
    včera 00:11 | Nová verze

    Mastodon (Wikipedie) - sociální síť, která není na prodej - byl vydán ve verzi 4.5. Přehled novinek s náhledy v oznámení na blogu.

    Ladislav Hagara | Komentářů: 2
    6.11. 23:55 | IT novinky

    Německo zvažuje, že zaplatí místním telekomunikačním operátorům včetně Deutsche Telekom, aby nahradili zařízení od čínské firmy Huawei. Náklady na výměnu by mohly přesáhnout dvě miliardy eur (bezmála 49 miliard Kč). Jeden scénář počítá s tím, že vláda na tento záměr použije prostředky určené na obranu či infrastrukturu.

    Ladislav Hagara | Komentářů: 1
    6.11. 18:00 | Komunita

    Po dvaceti letech skončil leader japonské SUMO (SUpport.MOzilla.org) komunity Marsf. Důvodem bylo nasazení sumobota, který nedodržuje nastavené postupy a hrubě zasahuje do překladů i archivů. Marsf zároveň zakázal použití svých příspěvků a dat k učení sumobota a AI a požádal o vyřazení svých dat ze všech učebních dat.

    karkar | Komentářů: 9
    6.11. 11:00 | IT novinky

    Úřad pro ochranu hospodářské soutěže zahajuje sektorové šetření v oblasti mobilních telekomunikačních služeb poskytovaných domácnostem v České republice. Z poznatků získaných na základě prvotní analýzy provedené ve spolupráci s Českým telekomunikačním úřadem (ČTÚ) ÚOHS zjistil, že vzájemné vztahy mezi operátory je zapotřebí detailněji prověřit kvůli možné nefunkčnosti některých aspektů konkurence na trzích, na nichž roste tržní podíl klíčových hráčů a naopak klesá význam nezávislých virtuálních operátorů.

    Ladislav Hagara | Komentářů: 16
    6.11. 10:55 | Humor

    Různé audity bezpečnostních systémů pařížského muzea Louvre odhalily závažné problémy v oblasti kybernetické bezpečnosti a tyto problémy přetrvávaly déle než deset let. Jeden z těchto auditů, který v roce 2014 provedla francouzská národní agentura pro kybernetickou bezpečnost, například ukázal, že heslo do kamerového systému muzea bylo „Louvre“. 😀

    Ladislav Hagara | Komentářů: 16
    6.11. 01:00 | Komunita

    Z upstreamu GNOME Mutter byl zcela odstraněn backend X11. GNOME 50 tedy poběží už pouze nad Waylandem. Aplikace pro X11 budou využívat XWayland.

    Ladislav Hagara | Komentářů: 19
    Jaké řešení používáte k vývoji / práci?
     (36%)
     (48%)
     (18%)
     (17%)
     (22%)
     (15%)
     (22%)
     (15%)
     (16%)
    Celkem 325 hlasů
     Komentářů: 15, poslední 2.11. 08:25
    Rozcestník

    Dotaz: BASH - nahrazení kódu

    31.7.2012 12:33 MM
    BASH - nahrazení kódu
    Přečteno: 246×
    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.