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 02:33 | Komunita

    V Amsterdamu probíhá Blender Conference 2025. Videozáznamy přednášek lze zhlédnout na YouTube. V úvodní keynote Ton Roosendaal oznámil, že k 1. lednu 2026 skončí jako chairman a CEO Blender Foundation. Tyto role převezme současný COO Blender Foundation Francesco Siddi.

    Ladislav Hagara | Komentářů: 0
    dnes 02:22 | Zajímavý článek

    The Document Foundation, organizace zastřešující projekt LibreOffice a další aktivity, zveřejnila výroční zprávu za rok 2024.

    ZCR | Komentářů: 0
    včera 17:33 | Nová verze

    Byla vydána nová stabilní verze 7.6 webového prohlížeče Vivaldi (Wikipedie). Postavena je na Chromiu 140. Přehled novinek i s náhledy v příspěvku na blogu.

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

    Byla vydána verze 1.90.0 programovacího jazyka Rust (Wikipedie). Podrobnosti v poznámkách k vydání. Vyzkoušet Rust lze například na stránce Rust by Example.

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

    GNUnet (Wikipedie) byl vydán v nové major verzi 0.25.0. Jedná se o framework pro decentralizované peer-to-peer síťování, na kterém je postavena řada aplikací.

    Ladislav Hagara | Komentářů: 0
    včera 12:11 | Nová verze

    Byla vydána nová major verze 7.0 živé linuxové distribuce Tails (The Amnesic Incognito Live System), jež klade důraz na ochranu soukromí uživatelů a anonymitu. Nově je postavena je na Debianu 13 (Trixie) a GNOME 48 (Bengaluru). Další novinky v příslušném seznamu.

    Ladislav Hagara | Komentářů: 0
    včera 04:44 | IT novinky

    Společnost Meta na dvoudenní konferenci Meta Connect 2025 představuje své novinky. První den byly představeny nové AI brýle: Ray-Ban Meta (Gen 2), sportovní Oakley Meta Vanguard a především Meta Ray-Ban Display s integrovaným displejem a EMG náramkem pro ovládání.

    Ladislav Hagara | Komentářů: 0
    včera 01:11 | Nová verze

    Po půl roce vývoje od vydání verze 48 bylo vydáno GNOME 49 s kódovým názvem Brescia (Mastodon). S přehrávačem videí Showtime místo Totemu a prohlížečem dokumentů Papers místo Evince. Podrobný přehled novinek i s náhledy v poznámkách k vydání a v novinkách pro vývojáře.

    Ladislav Hagara | Komentářů: 11
    17.9. 16:22 | Nová verze

    Open source softwarový stack ROCm (Wikipedie) pro vývoj AI a HPC na GPU od AMD byl vydán ve verzi 7.0.0. Přidána byla podpora AMD Instinct MI355X a MI350X.

    Ladislav Hagara | Komentářů: 0
    17.9. 15:22 | Nová verze

    Byla vydána nová verze 258 správce systému a služeb systemd (GitHub).

    Ladislav Hagara | Komentářů: 6
    Jaké řešení používáte k vývoji / práci?
     (39%)
     (55%)
     (6%)
     (9%)
     (12%)
     (9%)
     (12%)
     (9%)
     (15%)
    Celkem 33 hlasů
     Komentářů: 5, poslední včera 22:30
    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: 208×
    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.