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

    Ubuntu 26.10 bude Stonking Stingray (úžasný rejnok).

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

    Webový prohlížeč Dillo (Wikipedie) byl vydán ve verzi 3.3.0. S experimentální podporou FLTK 1.4. S příkazem dilloc pro ovládání prohlížeče z příkazové řádky. Vývoj prohlížeče se přesunul z GitHubu na vlastní doménu dillo-browser.org (Git).

    Ladislav Hagara | Komentářů: 1
    včera 21:55 | Komunita

    Byl publikován přehled dění a novinek z vývoje Asahi Linuxu, tj. Linuxu pro Apple Silicon. Vývojáři v přehledu vypíchli vylepšenou instalaci, podporu senzoru okolního světla, úsporu energie, opravy Bluetooth nebo zlepšení audia. Vývoj lze podpořit na Open Collective a GitHub Sponsors.

    Ladislav Hagara | Komentářů: 0
    25.4. 04:00 | Nová verze

    raylib (Wikipedie), tj. multiplatformní open-source knihovna pro vývoj grafických aplikací a her, byla vydána ve verzi 6.0.

    Ladislav Hagara | Komentářů: 0
    24.4. 18:33 | IT novinky

    Nové verze AI modelů. Společnost OpenAI představila GPT‑5.5. Společnost DeepSeek představila DeepSeek V4.

    Ladislav Hagara | Komentářů: 0
    24.4. 15:33 | Zajímavý článek

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

    Ladislav Hagara | Komentářů: 0
    24.4. 04:44 | Komunita

    Bylo oznámeno, že webový prohlížeč Opera GX zaměřený na hráče počítačových her je už také na Flathubu and Snapcraftu.

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

    Akcionáři americké mediální společnosti Warner Bros. Discovery dnes schválili převzetí firmy konkurentem Paramount Skydance za zhruba 110 miliard dolarů (téměř 2,3 bilionu Kč). Firmy se na spojení dohodly v únoru. O část společnosti Warner Bros. Discovery dříve usilovala rovněž streamovací platforma Netflix, se svou nabídkou však neuspěla. Transakci ještě budou schvalovat regulační orgány, a to nejen ve Spojených státech, ale také

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

    Canonical vydal (email, blog, YouTube) Ubuntu 26.04 LTS Resolute Raccoon. Přehled novinek v poznámkách k vydání. Vydány byly také oficiální deriváty Edubuntu, Kubuntu, Lubuntu, Ubuntu Budgie, Ubuntu Cinnamon, Ubuntu Kylin, Ubuntu Studio, Ubuntu Unity a Xubuntu. Jedná se o 11. vydání s dlouhodobou podporou (LTS).

    Ladislav Hagara | Komentářů: 2
    23.4. 11:55 | Nová verze

    V programovacím jazyce Go naprogramovaná webová aplikace pro spolupráci na zdrojových kódech pomocí gitu Gitea (Wikipedie) byla vydána v nové verzi 1.26.0. Přehled novinek v příspěvku na blogu.

    Ladislav Hagara | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (14%)
     (8%)
     (2%)
     (13%)
     (31%)
     (4%)
     (7%)
     (2%)
     (15%)
     (25%)
    Celkem 1427 hlasů
     Komentářů: 30, poslední 3.4. 20:20
    Rozcestník

    Dotaz: (b)ash expanze promennych

    Gilhad avatar 6.11.2010 14:41 Gilhad | skóre: 20 | blog: gilhadoviny
    (b)ash expanze promennych
    Přečteno: 231×
    Asi neco ocividneho nevidim, ale uz se s tim nejakou chvili morim a nic hezkeho me nenapada. Potreboval bych neco na tento zpusob:
    
    masterbox=10.0.0.1
    masterbox_port=123
    slave1box=10.0.0.2
    slave1box_port=245
    slave2box=10.0.0.15
    slave2box_port=981
    
    for box in master slave1 slave2; do
      iptables -A FORWARD -d ${${box}box} -p tcp -m tcp --dport ${${box}box_port} -j ACCEPT -m comment --comment "$box:${${box}box_port}"
    done
    
    s vysledkem:
    
      iptables -A FORWARD -d 10.0.0.1 -p tcp -m tcp --dport 123 -j ACCEPT -m comment --comment "master:123"
      iptables -A FORWARD -d 10.0.0.2 -p tcp -m tcp --dport 245 -j ACCEPT -m comment --comment "slave1:245"
      iptables -A FORWARD -d 10.0.0.15 -p tcp -m tcp --dport 981 -j ACCEPT -m comment --comment "slave2:981"
    
    Vim, ze bych to mohle nejakym zpusobem pomoci echa poskladat a nasledne procpat shellem pipou, ale porad nejak verim, ze jde nejak primo zapsat, ze chci hodnotu promenne, jejiz jmeno ziskam takovymto slozenim

    Řešení dotazu:


    Odpovědi

    Gilhad avatar 6.11.2010 15:59 Gilhad | skóre: 20 | blog: gilhadoviny
    Rozbalit Rozbalit vše Re: (b)ash expanze promennych
    Tak uz jsem nasel reseni:
    for box in master slave1 slave2; do
      iptables -A FORWARD -d $(eval echo "$"${box}box) -p tcp -m tcp --dport $(eval echo "$"${box}box_port) -j ACCEPT -m comment --comment "$box:$(eval echo '$'${box}box_port)"
      
    done
    
    

    pripadne pokud chci usetrit par volani shellu:

    for box in master slave1 slave2; do
    	ip=$(eval echo "$"${box}box)
    	port=$(eval echo "$"${box}box_port)
      iptables -A FORWARD -d $ip -p tcp -m tcp --dport $port -j ACCEPT -m comment --comment "$box:$port"
    done
    
    
    6.11.2010 16:30 deadmail
    Rozbalit Rozbalit vše Re: (b)ash expanze promennych
    da sa usetrit dalsia polovica volani eval:
    ip=$(eval echo "$"${box}box)
    port=${ip}_port
    
    Dokonca aj $(...):
    eval ip="\$${box}box"
    port="${ip}_port"
    
    6.11.2010 16:22 NN
    Rozbalit Rozbalit vše Re: (b)ash expanze promennych
    Jsem si hral:
    #!/bin/sh
    
    array=(10.0.0.1 135 master 10.0.0.2 136 slave2 10.0.0.3 137 slave3 10.0.0.4 138 slave4 10.0.0.5 139 master)
    
    for i in $(seq 0 3 9); do
    echo iptables -A FORWARD -d ${array[$i]} -p tcp -m tcp --dport ${array[$((i+1))]} -j ACCEPT -m comment --comment \"${array[$((i+2))]}:${array[$((i+1))]}\"
    done
    
    exit 0
    
    Akorat to ma vadu, ze musis vedet posledni sekvencni cislo(9)..

    NN
    6.11.2010 16:37 deadmail
    Rozbalit Rozbalit vše Re: (b)ash expanze promennych
    nemusim ;-), to sa da vypocitat
     echo $(((1+${#array})/3 ))
    
    6.11.2010 16:44 deadmail
    Rozbalit Rozbalit vše Re: (b)ash expanze promennych
    no trochu inac (posledny index bez troch):
     echo $((${#array[*]}-3))
    
    6.11.2010 16:39 Semo | skóre: 45 | blog: Semo
    Rozbalit Rozbalit vše Re: (b)ash expanze promennych
    masterbox=10.0.0.1
    box=master
    b=${box}box
    echo ${!b}
    man bash: indirect expansion
    If you hold a Unix shell up to your ear, you can you hear the C.
    Gilhad avatar 6.11.2010 18:04 Gilhad | skóre: 20 | blog: gilhadoviny
    Rozbalit Rozbalit vše Re: (b)ash expanze promennych
    Ja vedel, ze to musi jit nejak jednoduse :)
    6.11.2010 22:10 NN
    Rozbalit Rozbalit vše Re: (b)ash expanze promennych
    Pekne !

    NN

    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.